Bash 별칭으로 7z 압축 단순화하는 방법

파일의 크기를 줄이거나 연락처에 패키지로 보내기 위해 사용할 수 있는 방법과 도구는 많이 있습니다. 그 중 7-Zip은 뛰어난 성능과 압축 수준을 무료로 제공하는 독특한 조합 덕분에 대부분의 사용자에게 최고의 자리에 올랐습니다.
이 형식의 모든 압축 방식은 여기서 볼 접근 방식보다 더 복잡하게 나타납니다. 적어도 모든 것을 폴더와 하위 폴더에 압축된 “번들”로 포장하기 위해 압축을 사용하는 대부분의 사용자에게는 그렇습니다.
그렇다면 Bash의 별칭 지원과 7z의 명령줄 버전을 결합하여 간단한 명령으로 파일 패키지를 만드는 방법을 살펴보겠습니다.
p7zip 설치
가장 인기 있는 압축 도구인 7-Zip은 대부분의 리눅스 배포판에 이미 설치되어 있을 가능성이 높습니다. 이를 테스트하려면 터미널에서 “7z” 명령을 시도해 보세요. 설치되지 않았다면, 다음 명령으로 Ubuntu/Debian 기반 배포판에 설치할 수 있습니다:
sudo apt-get install p7zip-fullBash 별칭 파일 생성
Bash의 별칭은 명령이나 심지어 다중 명령 시퀀스를 단어 하나로 매핑할 수 있게 해줍니다. Bash에 별칭을 추가하는 쉬운 방법은 “~/.bashrc” 파일의 끝에 삽입하는 것입니다. 편의성과 조직을 위해 별도의 파일에 두는 것이 가장 좋습니다.
이 파일이 이미 존재할 가능성이 높으며, Bash의 구성에는 이에 대한 참조가 포함되어 있습니다. 좋아하는 워드 프로세서에서 “~/.bashrc”를 열고 다음을 검색하여 확인하세요:
if[-f ~/.bash_aliases]; then
. ~/.bash_aliases
Fi존재하지 않는 경우, 이미 있는 모든 것 뒤에 파일의 끝에 추가하세요.

7-Zip 정보 확인하기
터미널에서 7-Zip을 실행하여 명령줄 옵션의 개요를 볼 수 있습니다. 더 포괄적인 정보는 이 사용자 가이드나 프로그램의 매뉴얼 페이지를 방문하세요:
man 7z이 정보는 자신의 압축 명령을 설정하는 데 도움이 될 것입니다. 여기서 볼 명령은 아마도 여러분의 필요를 충족할 것입니다. 따라서 이를 자신의 .bash_aliases 파일에 복사하여 붙여넣을 수 있습니다.

초압축 별칭 만들기
좋아하는 워드 프로세서에서 “~/.bash_aliases” 파일을 열어보세요 - 우리는 nano를 사용합니다. 다음을 입력하세요:
alias 75='7z a -r -t7z -m0=lzma2 -mx=9 -myx=9 -mqs=on -ms=on'
alias 75는 이제부터 디렉토리의 모든 파일과 폴더를 압축된 7-Zip 번들로 압축하는 데 사용할 “75”라는 명령을 만들고 싶다는 것을 의미합니다. 이 명령에 이 특이한 이름을 채택한 이유는 “7zip 압축 수준 5”의 짧은 버전으로 기억하기 쉽기 때문입니다.
7z는 압축 명령 자체입니다. 그 뒤에 오는 a는 “새 압축 패키지에 파일을 추가하고 싶다”는 의미입니다. -r은 p7zip이 “실행된 폴더에 제한되지 않고” 최종 압축 패키지와 그 안의 모든 하위 폴더를 포함해야 함을 나타냅니다.
-t7z -m0=lzma2는 LZMA2 알고리즘을 주로 사용하여 7zip 패키지를 생성하고 싶다는 것을 나타냅니다. 이는 일반적으로 대부분의 파일 유형에 대해 최상의 압축을 제공합니다.
-mx=9 -myx=9는 압축 수준과 7-Zip이 압축할 파일의 내용을 분석하여 최상의 압축 전략을 찾기 위해 들이는 “노력의 양”에 해당합니다. 값이 높을수록 압축이 더 커지고 생성된 번들은 더 작아집니다.
마지막으로 -mqs=on -ms=on은 “솔리드” 압축을 원한다는 것을 정의합니다. 이는 p7zip이 유사한 파일을 단일 데이터 청크로 압축하여 더 나은 결과를 얻는 것을 의미합니다. 이 옵션이 꺼질 수 있는 이유는 유용하지만 두 가지 단점이 있기 때문입니다. 압축 시간을 늘리고 압축기가 생성한 최종 번들에서 독립 파일을 압축 해제할 수 없게 만듭니다. 솔리드 압축을 사용하면 “zip에서 단일 파일 추출”과 동등한 작업을 수행할 수 없으며, 내용을 접근하기 위해 전체 번들을 압축 해제해야 합니다.
별칭 복제 및 “축소”하기
최대 압축을 달성하는 명령으로 시작했으므로 더 많은 요소로 확장할 필요 없이 매개변수를 제거하고 설정 값을 줄여서 뒤로 이동할 수 있습니다.
기존 명령을 다섯 번 더 복사하여 각 명령을 자신의 줄에 배치하세요. 첫 번째 줄은 이미 가능한 최고 압축 수준을 달성하므로 그대로 두고, 나머지는 아래와 같이 추가 옵션을 제거하고 압축 수준을 줄이도록 수정하세요. 별칭도 낮은 압축 수준에 맞게 변경하는 것을 잊지 마세요.

다음 내용을 복사하여 ~/.bash_aliases에 붙여넣을 수 있습니다.
alias 75='7z a -r -t7z -m0=lzma2 -mx=9 -myx=9 -mqs=on -ms=on'
alias 74='7z a -r -t7z -m0=lzma2 -mx=9'
alias 73='7z a -r -t7z -m0=lzma2 -mx=7'
alias 72='7z a -r -t7z -m0=lzma2 -mx=5'
alias 71='7z a -r -t7z -m0=lzma2 -mx=3'
alias 70='7z a -r -t7z -m0=lzma2 -mx=1'별칭 활성화하기
파일에 대한 변경 사항을 저장하고 터미널로 돌아갑니다. 새 별칭을 로드하고 활성화하려면 다음 명령을 사용하세요:
source ~/.bashrc새 압축 명령이 활성화되었습니다. P7zip은 “압축할 것”을 매개변수로 정의하지 않으면 실행된 디렉토리의 모든 파일에서 기본적으로 작동합니다. 따라서 이제부터 폴더의 내용을 7z 패키지로 압축하려면 다음 명령을 입력하기만 하면 됩니다:
75 archive_name여기서 “75”는 이전의 최고 압축 수준에 대한 별칭이며, “archive_name”은 압축된 파일 패키지의 이름입니다. “75”를 다른 별칭(75에서 70까지)으로 바꿔 점차 작지만 더 빠른 압축을 사용할 수 있으며, 최종 파일의 이름은 원하는 대로 사용할 수 있습니다.

질문이 있으면 아래 댓글로 알려주세요.