#author("2018-04-13T13:12:35+09:00","","")
#navi(../)
* PowerShellを使ったZipファイルの作成、展開サンプル [#u18e3fc9]
PowerShellのバージョンが5であれば、ZIPファイルの作成(圧縮)および展開をPowerShellのコマンドレットを使って実現することができます。~
PowerShellのバージョン確認は以下の記事を参照してください。
-[[PowerShellのバージョンを確認する方法>PowerShell/PowerShellのバージョンを確認する方法・$PSVersionTable]]

#contents
#htmlinsertpcsp(win-top.html,win-sp.html)


* PowerShellでZIPファイル(圧縮)を作成 [#ta17e4be]
''Compress-Archive''コマンドレットを使用することにより、ZIPファイルを作成することができます。~
以下の手順は、圧縮対象とするファイルを作成し、Compress-ArchiveコマンドレットでZIPファイルを作成する手順になります。

+ 圧縮するテキストファイルを作成します
 PS C:\work> echo "SAKURA" | Out-File -Encoding default sakura.txt
 PS C:\work> echo "TSUBAKI" | Out-File -Encoding default tsubaki.txt
 PS C:\work> echo "SUZURAN" | Out-File -Encoding default suzuran.txt
 PS C:\work> Get-ChildItem -Name *.txt
 sakura.txt
 suzuran.txt
 tsubaki.txt
+Compress-Archiveコマンドレットを使って作成した3つのテキストファイルを対象に圧縮してみます。~
圧縮に時間がかかる場合、プログレスバーが表示されます。
 PS C:\work> Compress-Archive *.txt flower.zip
 PS C:\work> Get-ChildItem *
 
 
     ディレクトリ: C:\work
 
 Mode                LastWriteTime         Length Name
 ----                -------------         ------ ----
 -a----       2018/04/13     12:54            346 flower.zip
 -a----       2018/04/13     12:51              8 sakura.txt
 -a----       2018/04/13     12:52              9 suzuran.txt
 -a----       2018/04/13     12:52              9 tsubaki.txt
ZIPファイル(flower.zip)が作成されました。

Compress-Archiveコマンドレットを使ってZIPファイルを作成する場合は、以下の構文になります。
 Compress-Archive 圧縮したいファイル 出力するZIPファイル名
または(オプションをちゃんとつける場合は)
 Compress-Archive -Path ファイル -DestinationPath 出力するZIPファイル名

* PowerShellでIPファイルを展開する [#o365c35e]
''Expand-Archive''コマンドレットを使用することにより、ZIPファイルを展開することができます。~
動作検証のため、ZIPファイルを用意してください。~
本資料では、上記で作成したflower.zipを使用して説明します。

+圧縮対象だったテキストファイルを削除
 PS C:\work> Get-ChildItem
 
     ディレクトリ: C:\work
 
 Mode                LastWriteTime         Length Name
 ----                -------------         ------ ----
 -a----       2018/04/13     12:57            346 flower.zip
 -a----       2018/04/13     12:51              8 sakura.txt
 -a----       2018/04/13     12:52              9 suzuran.txt
 -a----       2018/04/13     12:52              9 tsubaki.txt
 
 
 PS C:\work> rm *.txt
 PS C:\work> Get-ChildItem -Name
 flower.zip
flower.zipのみとなりました。
+flower.zipをExpand-Archiveコマンドレットを使用して展開します
 PS C:\work> Expand-Archive .\flower.zip
 PS C:\work> Get-ChildItem
 
     ディレクトリ: C:\work
 
 Mode                LastWriteTime         Length Name
 ----                -------------         ------ ----
 d-----       2018/04/13     13:02                flower
 -a----       2018/04/13     12:57            346 flower.zip
展開できましたが、flowerディレクトリが作成され、flowerディレクトリ内にファイルが展開されています。
 PS C:\work> Get-ChildItem .\flower\
 
     ディレクトリ: C:\work\flower
 
 Mode                LastWriteTime         Length Name
 ----                -------------         ------ ----
 -a----       2018/04/13     12:51              8 sakura.txt
 -a----       2018/04/13     12:52              9 suzuran.txt
 -a----       2018/04/13     12:52              9 tsubaki.txt
+展開するディレクトリを指定する場合は、以下のようにします
 PS C:\work> Expand-Archive -Path .\flower.zip -DestinationPath .
 PS C:\work> Get-ChildItem
 
     ディレクトリ: C:\work
 
 Mode                LastWriteTime         Length Name
 ----                -------------         ------ ----
 d-----       2018/04/13     13:02                flower
 -a----       2018/04/13     12:57            346 flower.zip
 -a----       2018/04/13     12:51              8 sakura.txt
 -a----       2018/04/13     12:52              9 suzuran.txt
 -a----       2018/04/13     12:52              9 tsubaki.txt
オプションを使って、zipファイルと展開先ディレクトリを指定しています。

Expand-Archiveコマンドレットを使ってZIPファイルを展開する場合は、以下の構文になります。
 Expand-Archive ZIPファイル
または(オプションをちゃんとつける場合は)
 Expand-Archive -Path ZIPファイル -DestinationPath 展開するディレクトリ


以上、PowerShellでZIP圧縮ファイルの作成および、ZIPファイルの展開方法について記しました。

#htmlinsertpcsp(win-btm.html,win-sp.html)


トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS