PowerShell에서 7-Zip으로 압축
압축률이 높은 파일 보관 소프트웨어는 시중에서 쉽게 구할 수 있습니다. 그 중 하나가 7-Zip
이라는 프로그램입니다.
그러나 다른 압축 소프트웨어 중에서 7-Zip의 많은 장점 중 하나는 프로그래밍 방식으로 압축하거나 PowerShell과 같은 명령줄 인터프리터를 사용하여 압축할 수 있다는 것입니다.
이 문서에서는 PowerShell에서 7-Zip 소프트웨어로 압축하는 방법에 대해 설명합니다.
PowerShell에서 7-Zip으로 압축
PowerShell을 사용하여 7-Zip으로 압축을 시도하기 전에 컴퓨터에 7-Zip이 설치되어 있는지 확인해야 합니다. 설치 디렉터리와 실행 파일을 찾아 아래 코드와 같이 PowerShell 변수에 전체 설치 경로를 할당합니다.
$7zipPath = "$env:ProgramFiles\7-Zip\7z.exe"
실행 파일에 별칭을 지정하여 기본 PowerShell 스크립팅 환경과 혼합된 것처럼 보이도록 합시다. 오랫동안 PowerShell 개발자였다면 PowerShell 명령의 이름을 지정할 때 동사-명사 쌍 형식을 모범 사례로 알고 있을 것입니다.
다음 코드와 같이 Set-Alias
명령을 사용하여 새 별칭을 만듭니다.
보시다시피 Compress-7Zip
명령을 실행 파일의 이름으로 사용했으며 이는 언급된 모범 사례와 직접 일치합니다. 그러나 물론 원하는 대로 이름을 지정할 수 있습니다.
예제 코드:
Set-Alias Compress-7Zip $7ZipPath
이제 압축이 필요한 파일이나 폴더를 선언하고 압축이 완료된 압축 아카이브를 보낼 위치를 선언해 보겠습니다. 이렇게 하려면 압축할 파일과 각 PowerShell 변수의 대상 위치를 할당합니다.
예제 코드:
$Source = "C:\Events\System.txt"
$Destination = "c:\PS\Events.zip"
마지막으로 이제 7-Zip으로 압축을 시작할 수 있습니다. 모든 7-Zip 명령줄 매개변수에 대해서는 공식 7-Zip 문서 링크를 참조할 수 있습니다.
그러나 파일을 압축하기 위해 아래 매개변수를 사용할 수 있습니다.
예제 코드:
Compress-7zip a -mx=9 $Destination $Target
공식 문서에 따르면 -mx=9
매개변수는 압축 수준을 소프트웨어의 최고 압축률인 9
로 설정합니다.
이제 PowerShell에서 7-Zip을 사용할 수 있으므로 7-Zip이 설치되어 있지 않아도 걱정할 필요가 없다는 점도 공유할 가치가 있습니다. Windows PowerShell에는 Compress-Archive
명령을 사용하여 파일을 압축하는 기본 명령이 있으며 이 링크를 클릭하여 자세한 내용을 알아볼 수 있습니다.
Marion specializes in anything Microsoft-related and always tries to work and apply code in an IT infrastructure.
LinkedIn