Mac에 USB 드라이브가 연결되어 있습니다. USB 드라이브 .Trashes
의 휴지통 비우기 (휴지통 아이콘을 마우스 오른쪽 버튼으로 클릭하고 "빈 휴지통"을 실행) 할 때 찾은 내용이 비워지지 않았습니다.
무엇이 잘못 되었나요? USB 드라이브를 비우는 다른 방법이 있습니까?
rm -R /Volumes/volumename/.Trashes/$UID
Mac에 USB 드라이브가 연결되어 있습니다. USB 드라이브 .Trashes
의 휴지통 비우기 (휴지통 아이콘을 마우스 오른쪽 버튼으로 클릭하고 "빈 휴지통"을 실행) 할 때 찾은 내용이 비워지지 않았습니다.
무엇이 잘못 되었나요? USB 드라이브를 비우는 다른 방법이 있습니까?
rm -R /Volumes/volumename/.Trashes/$UID
답변:
다른 사용자 의 휴지통에 파일이있을 수 있습니다 . .Trashes
각 볼륨의 맨 위에 있는 폴더에는 사용자 ID 번호 (예 : 사용자 502의 휴지통이 있음 .Trashes/502
)에 따라 각기 다른 사용자에 대한 하위 폴더가 있습니다.
다음과 같은 명령을 사용하여 직접 확인할 수 있습니다 ( VolumeName
드라이브 이름으로 교체 ).
ls -la /Volumes/VolumeName/.Trashes/
total 0
d-wx-wx-wt@ 3 _unknown _unknown 102 10 Feb 18:15 .
drwxrwxrwx@ 21 root wheel 782 13 Feb 14:17 ..
drwx------@ 35 _unknown _unknown 1190 13 Feb 14:18 502
보시다시피, 내 USB 디스크 .Trashes
폴더에는 502
사용자 ID 502가 소유 한 이라는 하위 폴더가 있습니다 (참고로 현재 사용자 ID는 501입니다). 이 사용자가 내 시스템에 없기 때문에로 표시되며 _unknown
사용자가 내부를 볼 수 없으며 삭제할 수도 없습니다. 해당 폴더를 살펴 보려면 관리자 권한으로 폴더를 사용해야합니다 (예 :) sudo
.
원하는 경우 다음 과 같은 명령으로 전체 폴더를 삭제하여 모든 사람 의 휴지통을 삭제할 .Trashes
수 있습니다.
sudo rm -R /Volumes/volumeName/.Trashes
경고 : 관련된 아무것도로 sudo
( "수퍼 유저로하지" , 즉 시스템 관리자) 및 rm -R
, 신중을 사용합니다. 잘못 입력하면 ... 불쾌한 결과 가 발생할 수 있습니다 .
sudo rm
및 /Volumes/*/something
심지어 시스템 드라이브에 영향을 미칠 수 있기 때문에, 그리고 오타는 나쁜 결과를 초래할 수 있습니다.
일반적인 동작 :
USB 드라이브에서 무언가를 삭제하면 .Trashes
해당 볼륨 의 폴더 로 이동됩니다 . 컴퓨터에 연결하면 삭제 된 항목이 휴지통에 나타납니다.
연결을 해제하면 다시 연결하기 전까지는 드라이브에서 삭제 한 항목이 더 이상 휴지통에 표시되지 않습니다. 그런 다음 휴지통을 비울 수 있습니다. 그것은 것 정말 그 드라이브에서 삭제합니다.
그것이 당신에게 일어나지 않는다면, 여기 내 제안이 있습니다 :
cmd-i
(또는 메뉴 항목 File
→을 사용하십시오 Get Info
).Sharing and Permissions
해당 창의 섹션을 사용하여 Everyone
에 권한을 부여 하십시오 Read and Write
.나는 그것이 최선의 대답인지는 모르겠지만 적어도 작동하는 대답입니다.
명령 행을 열고 USB 볼륨 (내 경우에는 / Volumes / USB)으로 cd 한 후 다음을 입력하십시오.
/bin/rm -rf ./Trashes/* works fine with me.
2 솔루션. 1 Bash를 사용하는 다른 하나는 AppleScript에 싸인 Bash를 사용하는 것입니다.
/Applications/Utilities/AppleScript Editor
다음 코드를 입력하십시오 :
관리자 권한으로 쉘 스크립트 "rm -rf /Volumes/*/.Trashes/*"수행
참고 : 이렇게하면 내부 하드 디스크를 포함하여 연결된 모든 볼륨의 휴지통이 비워집니다. 5 개의 USB 드라이브와 Firewire 하드 디스크를 연결 한 경우 모든 휴지통이 비워집니다.
다음 코드를 텍스트 편집기에 붙여 넣고 파일을 저장하십시오.
#! / bin / bash
sudo rm -rf /Volumes/*/.Trashes/*
확장명을 사용하여 편리한 위치에 파일을 저장 한 .sh
다음 chmod +x {filename}.sh
터미널에서 실행 파일로 만드십시오.
./{filename}.sh
참고 : 위와 동일한 참고 사항. 이것은 터미널에서 실행 가능합니다.
이 스크립트 AppleScript를 사용하여 Application으로 저장하십시오.
on open these_volumes
set t_id to user ID of (system info)
repeat with i in these_volumes
if (kind of (info for i without size)) is "Volume" then
set tPath to (POSIX path of i) & ".Trashes/" & t_id
do shell script "/bin/rm -Rf " & (quoted form of tPath) & "/*"
end if
end repeat
end open
응용 프로그램에서 볼륨을 끌어다 놓습니다.
이 스크립트는 볼륨의 휴지통 (사용자 ID) 폴더에서 항목을 제거합니다. 다른 사용자가 볼륨을 사용하는 경우이 스크립트는 휴지통 폴더에서 항목을 삭제하지 않습니다. 그렇지 않으면 스크립트에서 관리자 암호가 필요합니다.
휴지통을 비운 후 볼륨을 꺼내려면이 스크립트를 사용하십시오.
on open these_volumes
set t_id to user ID of (system info)
set volToEject to {}
repeat with i in these_volumes
if (kind of (info for i without size)) is "Volume" then
set tPath to (POSIX path of i) & ".Trashes/" & t_id
do shell script "/bin/rm -Rf " & (quoted form of tPath) & "/*"
set end of volToEject to contents of i
end if
end repeat
if volToEject is not {} then tell application "Finder" to eject volToEject
end open