基本的に、私は Cygwin でシェル スクリプトを作成していますが、このスクリプトでは、いくつかのファイルを zip 圧縮する必要があります (zip 圧縮でなければならず、gzip 圧縮はできません)。作業中のサーバーには zip バイナリがインストールされておらず、RFC (変更要求) を実行する必要があるためインストールできません。
現時点で zip を作成できる唯一の方法は、Windows 環境で必要なファイルを選択し、右クリックして [圧縮された zip フォルダーに送信] を選択することです。しかし、これではシェル スクリプトを使用して作業を行う目的が達成されません。
Unix シェルまたは Windows CMD を介してこれを行う他の方法はありますか?
答え1
はい、Python zipファイルモジュール。Python はどこにでもインストールされているので、インストールを要求する必要はおそらくないでしょう。zipfile モジュールは Python の標準ライブラリに付属しているので、Python 自体がインストールされていれば、基本的にインストールされることが保証されます。
短い Python スクリプトを記述するか、独自のコマンド ライン インターフェイス (ドキュメント ページの最後に例があります) を使用して使用できます。
答え2
はい、PowerShell を使用してください。以下の例では、foo.txt を含む foo.zip を作成します。
PS C:\Users\steve_000> Compress-Archive -U -LiteralPath foo.txt -DestinationPath foo.zip
PS C:\Users\steve_000> dir foo.zip
Directory: C:\Users\steve_000
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 15/04/17 10:52 PM 1119 foo.zip
PS C:\Users\steve_000>
詳細はhttps://msdn.microsoft.com/powershell/reference/5.1/microsoft.powershell.archive/圧縮アーカイブ