2013-10-09 2 views
1

간혹 잘못된 디렉토리에 tar 아카이브를 추출합니다. 일반적으로 일부 아카이브는 모든 파일을 하나의 디렉토리에 저장하고 일부는 저장하지 않기 때문에.tar 아카이브에서 파일을 삭제합니다.

tar -xvf archive.tar 

이 방법을 취소/되돌리려면 어떻게해야합니까?

archive.tar에 포함 된 파일을 나열하고 rm ...으로 파이프하십시오.

추출물로 덮어 쓸 수있는 파일을 처리하기위한 추가 인터넷 지점.

+1

'추출물로 덮어 쓴 파일을 처리하기위한 여분의 인터넷 포인트 .' - 압축 파일을 추출한 후 ** 확인하는 방법이 없습니다 **. – devnull

답변

0

Google google-fu가 약했습니다.

의견 [http://www.commandlinefu.com/commands/view/2573/remove-all-files-previously-extracted-from-a-tar.gz-file.](commandlinefu entry)

tar tf <file.tar.gz> | sort -r | while read file; do if [ -d "$file" ]; then rmdir "$file"; else rm -f "$file"; fi; done 

다른 사람에게 도움이되기를 바랍니다.

누군가가 덮어 쓴 파일을 처리하는 방법을 알고 있다면 나는 그것을 정답으로 표시 할 것입니다.

+1

덮어 쓰기 된 파일을 처리하는 방법 : 백업에서 복원하십시오. 디렉토리가 소스 제어하에있는 경우가 아니면 (예를 들어'tar' 파일이 어떻게 든 repo 메타 데이터를 덮어 쓰지 않는 한) 디렉토리가 어떻게 보이는지에 대한 다른 기록은 없습니다. – chepner

관련 문제