Как архивировать и распаковывать файлы с помощью PowerShell в Windows 11/10

По сути, формат файла ZIP уменьшает размер файлов, сжимая их в один файл. Этот процесс экономит место на диске, шифрует данные и упрощает обмен файлами с другими. В этом посте мы покажем вам, как архивировать и распаковывать файлы( zip and unzip files )( zip and unzip files ) с помощью утилиты PowerShell в Windows 11/10.

Как архивировать файлы с помощью PowerShell

Вы начинаете с сжатия некоторых файлов в ZIP - архив с помощью командлета Compress-Archive . Он берет путь к любым файлам, которые вы хотите сжать — несколько файлов разделяются запятой — и архивирует их в указанном вами месте назначения.

Сделайте следующее:

Нажмите клавишу Windows key + X , чтобы открыть меню Power User(open Power User Menu) , а затем нажмите I на клавиатуре, чтобы запустить PowerShell .

Затем введите приведенный ниже синтаксис, заменив <PathToFiles> и <PathToDestination> на путь к файлам, которые вы хотите сжать, а также на имя и папку, в которую вы хотите перейти, соответственно.

Compress-Archive -LiteralPath <PathToFiles> -DestinationPath <PathToDestination>

Примечание(Note) . Когда вы указываете путь назначения, обязательно дайте файлу архива имя, иначе PowerShell сохранит его как «.zip» там, где вы укажете. Кроме того, имейте в виду, что кавычки вокруг пути необходимы только в том случае, если путь к файлу содержит пробел.

В качестве альтернативы, чтобы заархивировать все содержимое папки и всех ее подпапок, вы можете использовать тот же синтаксис, что и выше, заменив <PathToFiles> и <PathToDestination> путем к файлам, которые вы хотите сжать, а также именем и папкой, которые вы хотите сжать. хочу, чтобы он пошел, соответственно.

Это должно выглядеть так, как показано на изображении ниже.

Эта команда указывает путь к каталогу с несколькими файлами и папками, не указывая отдельные файлы. PowerShell берет все содержимое корневого каталога и сжимает его, подпапки и все такое.

Читайте(Read) : Как открыть .TAR.GZ, .TGZ или .GZ. Файлы(How to open .TAR.GZ, .TGZ or .GZ. Files) .

Функция подстановочного знака (*)

Командлет Compress-Archive(Compress-Archive) позволяет использовать подстановочный знак (*) для дальнейшего расширения функциональности. Когда вы используете символ, вы можете исключить корневой каталог, сжать только файлы в каталоге или выбрать все файлы определенного типа. Чтобы использовать подстановочный знак с Compress-Archive , вы должны  вместо этого использовать параметр -Path , так как (-Path)-LiteralPath их не принимает.

Теперь из обоих приведенных выше примеров вы увидели, как включить корневой каталог и все его файлы и подкаталоги при создании файла архива. Однако, если вы хотите исключить корневую папку из Zip - файла, вы можете использовать подстановочный знак, чтобы исключить ее из архива. Добавив звездочку (*) в конец пути к файлу, PowerShell будет захватывать только то, что находится внутри корневого каталога. Правильный синтаксис представлен ниже.

Compress-Archive -Path C:\path\to\file\* -DestinationPath C:\path\to\archive.zip

Как архивировать файлы с помощью PowerShell в Windows 10

Теперь, если у вас есть папка с кучей разных типов файлов (.docx, .txt , .jpg и т. д.), но вы хотите сжать только один тип, вы можете использовать приведенный ниже синтаксис. PowerShell заархивирует указанные файлы, не затрагивая явным образом остальные. Имейте(Bear) в виду, что при использовании этого метода в архив не включаются подкаталоги и файлы корневой папки.

Compress-Archive -Path C:\path\to\file\*.docx -DestinationPath C:\path\to\archive.zip

Наконец, если вам нужен архив, который сжимает только файлы в корневом каталоге и во всех его подкаталогах, вы будете использовать подстановочный знак звезда-точка-звезда (*.*) для архивирования файлов с синтаксисом, указанным ниже. При использовании этого метода подкаталоги и файлы корневой папки также не включаются в архив.

Compress-Archive -Path C:\path\to\file\*.* -DestinationPath C:\path\to\archive.zip

Теперь необходимо отметить, что даже после завершения архивирования вы можете обновить существующий заархивированный файл с использованием параметра -Update с правильным синтаксисом, указанным ниже. Это позволяет заменять старые версии файлов в архиве более новыми с теми же именами и добавлять файлы, которые были созданы в корневом каталоге.

Compress-Archive -Path C:\path\to\files -Update -DestinationPath C:\path\to\archive.zip

На этом завершается процесс различных сценариев, в которых вы можете архивировать файлы с помощью PowerShell в Windows 10 . Ниже показано, как распаковать файлы с помощью PowerShell .

Читайте(Read) : Как установить CURL в Windows 11/10 .

Как разархивировать файлы с помощью PowerShell

Как вы уже видели, PowerShell можно использовать для архивирования файлов. Утилита также умеет распаковывать архивы. Этот процесс еще проще, чем их сжатие — все, что вам нужно, это исходный файл и место назначения для данных, готовых к распаковке.

Давайте приступим к делу.

Чтобы разархивировать файлы с помощью PowerShell , сделайте следующее:

Откройте PowerShell.

Затем введите приведенный ниже синтаксис, заменив <PathToZipFile> и <PathToDestination> на путь к файлам, которые вы хотите сжать, а также имя и папку, в которую вы хотите перейти, соответственно.

Expand-Archive -LiteralPath <PathToZipFile> -DestinationPath <PathToDestination>

Папка назначения, указанная для извлечения файлов, будет заполнена содержимым архива. Если папка не существовала до распаковки, PowerShell создаст папку и поместит в нее содержимое перед распаковкой.

По умолчанию, если вы не укажете параметр -DestinationPath  , PowerShell разархивирует содержимое в текущий корневой каталог и использует имя Zip - файла для создания новой папки.

В данном примере в команде указана  папка Docs , поэтому (Docs)PowerShell создаст папку Docs по пути C:\Users\Chidum.Osobalu и извлечет файлы из архива в папку. См. выходную папку, содержащую два файла, заархивированных в начале этого поста ниже.

Заархивируйте и разархивируйте файлы с помощью PowerShell

Обратите внимание: если папка Docs уже существует в месте назначения, PowerShell вернет ошибку при попытке разархивировать файлы. Однако вы можете заставить PowerShell перезаписать данные новыми, используя параметр -Force  .

Параметр -Force(-Force) следует использовать только в том  случае, если старые файлы больше не нужны, так как это необратимо заменит файлы на вашем компьютере.

And this wraps up our subject on how to zip and unzip files using the PowerShell utility in Windows 11/10!



About the author

Я инженер-программист с более чем 10-летним опытом работы на платформах Windows 11 и 10. Я сосредоточился на разработке и поддержке высококачественного программного обеспечения для Windows 7 и Windows 8. Я также работал над множеством других проектов, включая, помимо прочего, Chrome, Firefox, Xbox One и файлы.



Related posts