그래서 제가 사용한 다음 줄이 있습니다.
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 \;
아카이브가 아직 존재하지 않는 경우 아카이브를 생성하고, 존재하는 경우 아카이브에 추가합니다.