파일을 재귀적으로 삭제하다
그 귀찮은 ._와 를 제거할 수 있는 해결책을 가진 사람이 있습니까?Mac에서 Linux 서버로 파일을 옮긴 후 얻는 DS_Store 파일?
시작 디렉토리를 지정하고 놓아둘까요?예를 들어 /var/www/www/down...
디렉토리로 변경하고 다음을 사용합니다.
find . -name ".DS_Store" -print0 | xargs -0 rm -rf
find . -name "._*" -print0 | xargs -0 rm -rf
테스트되지 않은 경우 먼저 xargs 없이 테스트해 보십시오!
먼저 디렉토리로 변경하는 대신 검색 후 기간을 디렉토리로 바꿀 수 있습니다.
find /dir/here ...
find /var/www/html \( -name '.DS_Store' -or -name '._*' \) -delete
새로운 Findutils 지원-delete
, 그래서:
find . -name ".DS_Store" -delete
더하다-print
삭제 목록도 가져옵니다.
최신 POSIX 시스템을 가지고 있다면 명령어가 도움이 될 것입니다.적어도 OS X 10.8에서는 사용할 수 있고, MacOS 10.12(Mojave)에서 테스트한 다른 사용자에게는 사용할 수 있습니다.
@X-Instance의 투고 코멘트에서 @eemient의 공로를 인정합니다(자신의 답변을 보증하기에 충분하다고 생각됨).
간단한 명령어:
rm `find ./ -name '.DS_Store'` -rf
rm `find ./ -name '._'` -rf
행운을 빕니다.
cd /var/www/html && find . -name '.DS_Store' -print0 | xargs -0 rm
cd /var/www/html && find . -name '._*' -print0 | xargs -0 rm
bash 대신 zsh로 전환할 수 있습니다.이를 통해 **를 사용하여 디렉토리 트리의 임의의 위치에 있는 파일을 일치시킬 수 있습니다.
$ rm /var/www/html/**/_* /var/www/html/**/.DS_Store
다음과 같이 조합할 수도 있습니다.
$ rm /var/www/html/**/(_*|.DS_Store)
Zsh에는 bash에 없는 다른 기능이 많이 있지만 그것만으로도 바꿀 가치가 있습니다.대부분의 (아마도 모든) Linux Distros 및 sygwin 및 OS X에서 사용할 수 있습니다.
자세한 내용은 zsh 사이트에서 확인할 수 있습니다.
find . -name "FILE-TO-FIND"-exec rm -rf {} \;
"Thumbs.db"를 재귀적으로 삭제하는 예
find . -iname "Thumbs.db" -print0 | xargs -0 rm -rf
검증 기준:
find . -iname "Thumbs.db"
현재 경로 내에 "Thumbs.db"가 있는 항목이 표시되지 않습니다.
이 답변에 인쇄를 추가하여 무엇이 삭제되었는지 확인하는 것이 좋습니다.
find /var/www/html \( -name '.DS_Store' -or -name '._*' \) -delete -print
Bash 4.0++가 있는 경우
#!/bin/bash
shopt -s globstar
for file in /var/www/html/**/.DS_Store /var/www/html/**/._
do
echo rm "$file"
done
주의사항:
'-delete'는 재귀적이지 않습니다.그래서 만약에.임시의항목(폴더)에 파일이 포함되어 있으면 명령이 실패합니다.
mac에 의해 작성된 많은 성가신 파일이 있습니다.DS_Store . . . . . . . . . . .DS_Store.임시의항목 .apdisk
이 명령어 하나로 모든 것이 해결됩니다.여러 일치에 대해 찾기 실행을 반복하여 저장합니다.
find /home/foo \( -name '.DS_Store' -or -name '._.DS_Store' -or -name '._*' -or -name '.TemporaryItems' -or -name '.apdisk' \) -exec rm -rf {} \;
이것도 동작합니다.
sudo rm -rf 2018-03-*
여기서 2018-03-(다른 형식) 형식의 파일을 삭제합니다.
단순하게 받아들여라.
언급URL : https://stackoverflow.com/questions/2016844/recursively-remove-files
'programing' 카테고리의 다른 글
python의 기존 워크북에 새 시트 추가 (0) | 2023.04.22 |
---|---|
WPF ListView 열에 항목 추가 (0) | 2023.04.22 |
내 아이폰 앱은 어떻게 자체 버전 번호를 감지합니까? (0) | 2023.04.22 |
스테이징 또는 운영 인스턴스? (0) | 2023.04.22 |
git에서 여러 원격 분기 삭제 (0) | 2023.04.22 |