디렉터리의 파일을 압축하지 않고 여러 디렉터리의 파일만 압축하는 방법은 무엇입니까?

디렉터리의 파일을 압축하지 않고 여러 디렉터리의 파일만 압축하는 방법은 무엇입니까?

내 테스트 폴더 아래에는 세 개의 폴더가 있습니다.

Test ----> dir1, dir2, dir3

dir1, dir2 및 dir3 아래에 많은 파일이 있습니다. 파일만 압축하고 싶지만 dir1, dir2, dir3은 압축하고 싶지 않습니다.

답변1

존재하다 Test:

pax -w's|.*/||' dir[1-3]/* | xz > file.tar.xz

경로 구성 요소가 없는 파일은 보관됩니다.

이렇게 하면 dir[1-3]/*숨겨진 파일이 생략됩니다. 기호 링크의 경우 -s기호 링크 대상도 다시 작성됩니다.

당신이 원한다면정기적인파일 이름에 개행 문자가 포함되어 있지 않다고 가정하면 파일이 있습니다. 다음을 수행할 수 있습니다.

find dir[1-3] -type f | pax -ws'|.*/||' | xz > file.tar.xz

파일 이름에 개행 문자가 포함될 수 있는 경우 일부 시스템에서는 다음과 같이 작성할 수 있습니다.

find dir[1-3] -type f -print0 | pax -w0s'|.*/||' | xz > file.tar.xz

find및는 pax표준 명령이지만 YMMV 는 아닙니다 -print0.-0

관련 정보