\r\n\r\n

powershellでファイルを圧縮(解凍)する方法

ZIPファイル形式は、1つのファイルに圧縮することで、ファイルサイズを小さくします。この処理により、ディスク容量の節約、データの暗号化、他者とのファイル共有が容易になります。ここでは、powershellを使ったファイルの圧縮・解凍方法について説明します...

ZIPファイル形式は、1つのファイルに圧縮することで、ファイルサイズを小さくします。この処理により、ディスク容量の節約、データの暗号化、他者とのファイル共有が容易になります。ここでは、PowerShellを使ったファイルの圧縮・解凍方法を紹介します。

powershellでファイルを圧縮する方法

まず、Compress-archiveコマンドレットを使用して、いくつかのファイルをZIPファイルアーカイブに圧縮してみましょう。圧縮されるファイルのパスを取得します。複数のファイルをカンマで区切り、指定した保存先にアーカイブします。

まず、スタートメニューからPowerShellを検索して開き、以下のコマンドを入力してください。ファイル名とフォルダー名

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

保存先のパスを指定する際には、必ずアーカイブファイルの名前を指定してください。そうしないと、PowerShellは指定された場所に「.zip」として保存してしまいます。

注:ファイルパスの引用符は、パスにスペースが含まれる場合のみ必要です。

また、フォルダとそのサブフォルダすべての内容を圧縮する場合は、以下のコマンドを使用し、 &lt; PathToFolder&gt; と &lt; PathToDestination&gt; をそれぞれ圧縮するファイルのパス、圧縮するファイルの名前とフォルダに置き換えてください。

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

前の例では、個々のファイルを指定せずに、複数のファイルやフォルダを含むディレクトリにパスを入れました。 powerShellはルートディレクトリのすべてを取得し、サブフォルダとすべてのコンテンツを圧縮します。

Compress-Archiveコマンドレットを使用すると、ワイルドカード(*)を使用してさらに機能を拡張することができます。文字を使用する場合、ルートディレクトリを除外したり、ディレクトリ内のファイルのみを圧縮したり、特定の種類のファイルをすべて選択することができます。アーカイブの圧縮にワイルドカードを使用するには、-LiteralPathが受け付けないため、代わりに-Pathパラメータを使用する必要があります。

上記では、アーカイブファイルを作成する際に、ルートディレクトリとそのすべてのファイルおよびサブディレクトリを含める方法について説明しました。ただし、Zipファイルからルートフォルダを除外するには、ワイルドカード文字を使用してアーカイブから省略することができます。ファイルパスの末尾にアスタリスク(*)を追加することで、ルートディレクトリの内容のみを取得するようにPowerShellに指示することができます。このように表示されるはずです。

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

次に、多数の異なる種類のファイル(.doc、.txt、.jpgなど)を含むフォルダがあり、ある種類のファイルだけを圧縮したいとします。他のファイルを明示的に触ることなく、PowerShellにアーカイブするように指示することができます。コマンドの表記を以下に示す。

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

注)この方法によるアーカイブファイルには、ルートフォルダのサブディレクトリやファイルは含まれません。

最後に、ルートディレクトリとそのすべてのサブディレクトリのファイルだけを圧縮するアーカイブが欲しい場合は、アスタリスク(**)の点線付きワイルドカード文字を使用して圧縮することができます。こんな感じです。

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

注)この方法によるアーカイブファイルには、ルートフォルダのサブディレクトリやファイルは含まれません。

アーカイブ完了後でも、-updateパラメータを使用すると、既存のZIPファイルを更新することができます。アーカイブ内の古いバージョンのファイルを同名の新しいファイルに置き換えたり、ルートディレクトリに作成されたファイルを追加したりすることができます。こんな感じです。

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

powershellでファイルを解凍する方法

PowerShellは、ファイルやフォルダの圧縮だけでなく、アーカイブされたファイルの解凍も可能です。圧縮するよりもさらに簡単な作業で、必要なのは圧縮元のファイルと解凍するデータの保存先だけです。

PowerShell を開き、以下のコマンドを入力します。&lt; PathToZipFile&gt; と &lt; PathToDestination&gt; をそれぞれ圧縮するファイルのパス、圧縮するファイルの名前とフォルダーに置き換えてください。

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

ファイルの展開先フォルダに、アーカイブの内容を入力するように指定します。解凍前にフォルダが存在しない場合、PowerShellはフォルダを作成し、その中にコンテンツを配置してから解凍を行います。

デフォルトでは、-DestinationPath パラメータが省略された場合、PowerShell は現在のルートディレクトリにコンテンツを解凍し、Zip ファイルの名前を使用して新しいフォルダを作成します。

先ほどの例では、-DestinationPathを省略すると、PowerShellは "C: \Usersbrady" のパスに "Archive" フォルダーを作成し、アーカイブからファイルを展開します。をアーカイブからそのフォルダにコピーします。

このフォルダがすでにターゲットに存在する場合、PowerShellはファイルを抽出しようとするとエラーを返します。しかし、PowerShellでは、-forceパラメータを使用することで、強制的に新しいデータで上書きすることができます。

Forceパラメータは、コンピュータ上のファイルを不可逆的に置き換えるため、古いファイルが不要になった場合にのみ使用してください。

あなたが興味を持っているかもしれない記事

匿名者
匿名者

0 件の投稿

作家リスト

  1. admin 0 投稿
  2. 匿名者 0 投稿

おすすめ