zip 명령에 폴더 목록 전달

zip 명령에 폴더 목록 전달

많은 폴더가 포함된 폴더가 있습니다.

모두 압축할 필요는 없으며 별도의 파일로 압축해야 하는 폴더 목록이 있습니다.

폴더 목록의 형식은 다음과 같습니다.

folder1 folder2 folder3...

다음과 같이 할 수 있습니다(이 방법은 작동하지 않지만 매개변수를 올바르게 전달하는 방법을 모르겠습니다).

zip -r backup1.zip < listOfFolders.txt

답변1

표준 입력에서 파일 목록을 읽으 -@려면 이 옵션을 사용하십시오 .zip

$ cat listOfFolders.txt | zip -r@ part1.zip

답변2

zip backup1.zip -r@ < listOfFolders.txt

옵션을 r@사용하면 zip이 표준 입력에서 입력을 읽습니다.

임시 파일에서 파일 목록을 전달하고 싶지 않은 경우폴더목록.txt, 아래와 같이 grep을 사용하여 파일을 필터링하고 결과를 zip에 전달할 수 있습니다.

grep -rl "<parent_folder_name>" <file/folder_name_regex> | zip backup1.zip -r@

(또는)

위 답변에서 언급했듯이

listOfFolders zip -r@ backup1.zip

관련 정보