![파일 압축 시 디렉터리를 제외하는 방법](https://linux55.com/image/69980/%ED%8C%8C%EC%9D%BC%20%EC%95%95%EC%B6%95%20%EC%8B%9C%20%EB%94%94%EB%A0%89%ED%84%B0%EB%A6%AC%EB%A5%BC%20%EC%A0%9C%EC%99%B8%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95.png)
빌드 아카이브를 사용할 때 특정 디렉터리를 제외하려고 합니다 zip
. 내가 시도한 것은 다음과 같습니다.
$ zip home.zip -y -r HOME -x '/AppData' -x '/AppData*' -x '/AppData/*' -x 'AppData' -x 'AppData*' -x 'AppData/*'
생산:
adding: HOME/ (stored 0%)
adding: HOME/AppData/ (stored 0%)
adding: HOME/AppData/a (deflated 39%)
adding: HOME/AppData/LocalLow/ (stored 0%)
adding: HOME/AppData/LocalLow/Sun/ (stored 0%)
adding: HOME/AppData/LocalLow/Sun/Java/ (stored 0%)
adding: HOME/AppData/LocalLow/Sun/Java/a (deflated 39%)
adding: HOME/AppData/LocalLow/Sun/Java/Deployment/ (stored 0%)
adding: HOME/AppData/LocalLow/Sun/Java/Deployment/a (deflated 39%)
내 디렉토리 트리는 다음과 같습니다.
./HOME
./HOME/AppData
./HOME/AppData/a
./HOME/AppData/LocalLow
./HOME/AppData/LocalLow/Sun
./HOME/AppData/LocalLow/Sun/Java
./HOME/AppData/LocalLow/Sun/Java/a
./HOME/AppData/LocalLow/Sun/Java/Deployment
./HOME/AppData/LocalLow/Sun/Java/Deployment/a
그래서 내 선택을 무시하는 것 같습니다 -x
.
이 옵션의 올바른 구문은 무엇입니까 -x
?
확립된이 게시물그러나 위에서 볼 수 있듯이 내 문제는 해결되지 않았습니다.
Windows 7의 Cygwin 1.7.35에서 Info-ZIP 3.0을 사용하고 있습니다.
답변1
로 설정해 보세요-x '*AppData/*'
답변2
그냥 해
-x */AppData/*
# or
--exclude */AppData/*
첫 번째 슬래시를 추가하는 것을 잊지 마세요. 그렇지 않으면 "AppData"로 시작하는 경로뿐만 아니라 "AppData"가 포함된 모든 경로와도 일치하기 때문입니다.
답변3
zip
일치하는 경로 에는 루트가 아닌 한 사용자가 제공한 루트 경로 요소가 포함되어 있는 것 같습니다 ..
내 경우에는 아래의 항목을 제외하려면 다음이 LocalLow
필요합니다.
$ zip home.zip -y -r HOME -x 'HOME/AppData/LocalLow/*'
생산하다:
adding: HOME/ (stored 0%)
adding: HOME/AppData/ (stored 0%)
adding: HOME/AppData/a (deflated 39%)
디렉터리 cd
로 이동하여 이를 루트 디렉터리로 사용하는 경우 제외 경로에 루트 요소를 지정할 필요가 없습니다.HOME
.
$ cd HOME
$ zip home.zip -y -r . -x 'AppData/LocalLow/*'
adding: AppData/ (stored 0%)
adding: AppData/a (deflated 39%)