다음과 같은 디렉토리가 있습니다 folder
.
folder
-> root_folder
-> some files
이 디렉토리를 에 압축하고 싶습니다 zipped_dir
. 다음을 시도했습니다.
zip -r zipped_dir.zip folder/*
그러나 이렇게 하면 다음과 같은 ZIP이 생성됩니다.
zipped_dir
-> folder
-> root_folder
-> some files
즉, 압축하려는 내용이 포함된 디렉터리가 포함됩니다. 아무것도 이동하지 않고 ZIP에서 이 상위 디렉터리를 제외하려면 어떻게 해야 합니까?
IE 나는 다음과 같은 최종 결과를 원합니다.
zipped_dir
-> root_folder
-> some files
답변1
이 명령을 사용해 보십시오(이해할 것입니다).
cd folder; zip -r ../zipped_dir.zip *
다른 방법도 있을 수 있지만 저에게는 이 방법이 가장 빠르고 쉽습니다 :)
답변2
예를 들면 다음과 같습니다 -j
.zip -r -j zipped_dir.zip folder/*
"root_folder"는 압축되지 않습니다.
답변3
zip -r -D zipped.zip *
-D
zip에 디렉터리를 생성하지 않도록 지시합니다.
답변4
bash: /usr/bin/zip: Argument list too long
수천 개의 파일을 압축하는 경우 Romeo Ninov의 답변을 사용할 때 오류( )가 발생할 수 있습니다. 이를 방지하려면 다음과 같이 a .
대신 a를 사용하십시오 *
.
cd folder
zip -r ../zipped_folder.zip .