tar를 사용하여 실제 추출된(건너뛰지 않은) 파일만 표시

tar를 사용하여 실제 추출된(건너뛰지 않은) 파일만 표시

일일 백업 아카이브를 추출하고 있습니다. 마지막 날 이후의 새 파일만 보고 싶습니다. 아카이브에는 이미 존재하는 많은 파일이 포함되어 있어 덮어쓰고 싶지 않으므로 해당 --skip-old-files옵션을 사용하면 괜찮습니다.

하지만 나는 원한다목록만그 파일들실제로 추출됨그리고 이미 존재하기 때문에 건너뛴 항목은 무시하세요.

예:

내 현재 명령은 다음과 같습니다

tar --verbose --skip-old-files --extract --file=2019-02-10.tar.gz

출력은 다음과 같습니다(여기서 file1과 file2는 이미 존재하고 file3은 새로운 것임).

file1.zip
tar: file1.zip: skipping existing file
file2.zip
tar: file2.zip: skipping existing file
file3.zip

file3.zip의 출력이 필요합니다. 가능합니까?

답변1

이것이 디렉터리에 쓰는 유일한 프로세스인 경우 임시 파일을 만들고 자세한 정보 표시 모드에서 파일을 추출한 다음 임시 파일보다 변경 시간이 더 최근인 파일을 볼 수 있습니다.

예를 들어

MYTMP=$(mktemp)
tar --skip-old-files --extract --file=2019-02-10.tar.gz
find . -cnewer $MYTMP
rm $MYTMP

관련 정보