이것은 매우 짜증나는 현상입니다. 때로는 아카이브( tar.gz, tar.bz2, zip, rar, etc
) 를 다운로드하여 tar xf [file]
해당 파일(또는 이와 유사한) 디렉터리에서 실행합니다. 드문 경우지만 모든 파일이 하위 디렉터리 대신 현재 작업 디렉터리로 추출됩니다. 이로 인해 단순히 패턴 일치 솔루션을 사용하여 제거할 수 없는 수백 개의 파일과 수백 개의 패턴이 생성될 수 있습니다.
아카이브의 파일 내용을 가져온 다음 현재 작업 디렉터리의 해당 목록에 있는 모든 파일을 삭제하는 방법이 있습니까?
답변1
아카이브의 내용을 나열한 다음 xargs를 사용하여 목록을 rm에 전달할 수 있습니다.
tarball 예( rm
첫 번째 것 없이 테스트할 수 있음):
tar tfz archive.tar.gz | xargs rm -rf
~을 위한. 압축파일 (또는 이에 상응하는 ) tar tfz archive.tar.gz
로 대체됨 (참조:unzip -Z1 file.zip
zipinfo -1 file.zip
https://unix.stackexchange.com/a/128304/368910)
답변2
모든 파일이 동일한 날짜/시간에 추출되었다고 가정하면 한 줄의 코드를 작성하고 정규식을 rm
.