![Unix zip 명령 가비지 경로 플래그가 동일한 파일 이름에서 작동하지 않습니다.](https://linux55.com/image/73497/Unix%20zip%20%EB%AA%85%EB%A0%B9%20%EA%B0%80%EB%B9%84%EC%A7%80%20%EA%B2%BD%EB%A1%9C%20%ED%94%8C%EB%9E%98%EA%B7%B8%EA%B0%80%20%EB%8F%99%EC%9D%BC%ED%95%9C%20%ED%8C%8C%EC%9D%BC%20%EC%9D%B4%EB%A6%84%EC%97%90%EC%84%9C%20%EC%9E%91%EB%8F%99%ED%95%98%EC%A7%80%20%EC%95%8A%EC%8A%B5%EB%8B%88%EB%8B%A4..png)
다음과 같은 파일 구조가 있습니다.
cwd/
---dir1
---file_name1
---some_file_name
---dir2
---file_name1
---some_other_file_name
---some_file
cwd
압축을 풀 때 디렉토리 대신 디렉토리를 얻을 수 있도록 zip 파일을 얻고 싶습니다 pwd
. 그래서남자 말에 따르면플래그를 사용해야 합니다 -j
. 하지만 이 컨텍스트(OS X mac unix)에서 그를 사용할 때 file_name1
두 개의 다른 디렉토리에 있는 동일한 파일 이름 문제에 대한 오류(예제에서는)가 발생합니다.
zip error: Invalid command arguments (cannot repeat names in zip file).
first full name...
second full name...
this my be a result of using -j
이에 따르면아무것도 이루어지지 않은 것 같습니다. zip -j
그것이 작동하는 방식입니다. 기본 pwd
파일 구조 없이 zip 압축 요구 사항을 어떻게 달성할 수 있습니까? (파일 이름을 바꿀 수 없습니다. 그래서 처음부터 쉘 등을 통해 zip을 사용하고 있습니다.)
감사해요,
답변1
그렇다면 경로를 버리고 최상위 디렉토리만 무시하고 싶지 않으신가요?
cd cwd ; zip -r ../cwd.zip .