Tar가 기존 아카이브가 있는 경우에만 업데이트하도록 허용

Tar가 기존 아카이브가 있는 경우에만 업데이트하도록 허용

그래서 제가 사용한 다음 줄이 있습니다.

find . -maxdepth 1 -mindepth 1 -type d -exec tar cvf {}.tar {} --remove-files \;

각 최상위 디렉토리를 자체 tar 아카이브로 압축한 다음 파일을 삭제합니다.

이제 어떤 이유로 인해 예기치 않게 중지되면 어떻게 다시 계속되도록 할 수 있나요? tar가 이미 존재하는 경우 다시 생성할 필요가 없습니다.

나는 이 --update깃발을 알고 있지만 나에게는지식:

 -u, --update
       only append files newer than copy in archive

유일한 것 같습니다고쳐 쓰다파일이 더 최신이고 파일이 존재하지 않을 때 실제로 추가하지 않는 경우.

위에서 언급한 작업을 수행하기 위해 Bash/Unix 도구를 어떻게 사용할 수 있습니까?

답변1

r대신 (추가 모드)를 사용하십시오 c.

find . -maxdepth 1 -mindepth 1 -type d -exec tar rvf {}.tar {} --remove-files \;

아카이브가 아직 존재하지 않는 경우 아카이브를 생성하고, 존재하는 경우 아카이브에 추가합니다.

관련 정보