Linux bash에서 zip 명령 사용

Linux bash에서 zip 명령 사용

저는 현재 bash를 연습하고 있습니다. 가장 효율적인 압축 프로그램이 무엇인지 확인하려면 bzip2 gzip 및 zip을 사용해 보십시오. 문제는 zip 명령 부분에 있습니다. 작동하고 압축 파일의 크기를 반영합니다. 그러나 리눅스는 보여줍니다

line 22: adding:: command not found

여기에 이미지 설명을 입력하세요.

답변1

다음을 사용하면 오류가 발생합니다 $().

$(zip "$1.zip" $1)

이것은명령 대체, 명령을 해당 출력으로 대체합니다. 따라서 쉘은 zip출력을 가져와 이를 쉘 스크립트의 일부로 해석하려고 시도합니다.

adding: ...

adding:시스템에서 유효한 명령이 아니며 쉘이 이에 대해 불평할 것입니다.

다음 명령을 직접 실행해야 합니다.

zip "$1.zip" "$1"

출력을 제거하려면 방향을 바꾸거나 옵션("quiet")을 사용 zip하십시오 -q.

zip "$1.zip" "$1" > /dev/null
zip -q "$1.zip" "$1"

발생한 오류는 계속 표시됩니다.

답변2

zip 명령이 설치되어 있는지 확인하십시오. Debian Linux를 사용하고 있는데 unzip은 설치되어 있지만 기본적으로 zip은 설치되지 않습니다.

또한 zip을 호출하는 명령의 구문은 gzip 및 bzip2를 호출하는 명령과 다릅니다.

"$1.zip" versus "${1}.bz2" and "${1}.gz"

관련 정보