Macのターミナルでパスワード付きのZIPファイルを作成する方法

自分とは違うMacでパスワード付きのZIPファイルを作成しないといけなくなった場合、圧縮アプリを入れてもらうのが1番ラクなのですが、そういうわけにもいかない場合はターミナルからコマンドを実行して作成できます。
アプリならKekaがオススメ
普段自分のMacを使っている場合は、圧縮アプリの「Keka」を使っています。
 対応しているファイル形式が多いですし、パスワード付きのZIPファイルも簡単に作成できます。
また、重要なことですが「macOS標準の機能で圧縮したZIPファイルは、Windowsで解凍すると文字化けする」問題があります。
 これは文字コードの違いによって発生するのですが、Kekaを使っていれば文字化けしません。
たとえやり取りしている相手がMacユーザーだとしても、そこから先で他の人に作業を横展開するかもしれません。
 あえて「Windowsで開くと文字化けする状態」をつくる必要はないと思っています。
ターミナルでZIP圧縮する方法
ファイル圧縮
ターミナルでZIP圧縮する場合はzipコマンドを使います。
 下記が基本的な形式で、圧縮したいディレクトリを開いた状態で実行すると、ファイルのZIP圧縮ができます。
zip [Zipファイル名] [圧縮したいファイル名]「image.png」を圧縮して「sample.zip」をつくりたい場合は下記のコマンドを実行します。
zip sample.zip image.pngちなみに、複数ファイルを圧縮したい場合は、半角スペースで区切って複数のファイル名を入力すればOKです。
zip [Zipファイル名] [ファイル1] [ファイル2] [ファイル3]フォルダ圧縮
フォルダを圧縮したい場合は「-r」オプションを付ける必要があります。
zip -r [Zipファイル名] [圧縮したいフォルダ名]フォルダ圧縮時には必須のオプションですが、逆にファイルの圧縮時は-rオプションを付けていても問題なく圧縮できます。
パスワードを付けて圧縮
パスワードを付けたい場合は、「-e」オプションを付けます。
 フォルダ圧縮でパスワードを付けたい場合は「-er」となります。
zip -er [ZIPファイル名] [圧縮したいフォルダ名]コマンド実行後に「Enter password:」と表示されるので、パスワードを入力してenterを押します。
 このとき、文字を入力してもターミナルの画面上はなにも変化がありませんが、ちゃんと押した文字は入力されているので安心してください。

「Verify password:」と表示されるので、確認として再度同じパスワードを入力してenterを押せば作成されます。
すでに存在しているZIPファイルにパスワードを付ける
すでにZIPファイルはあって、それに対してパスワードを付けたい場合は「zipcloak」コマンドを使います(cloakには覆い隠すもの・マントという意味があるそうです)。
zipcloak [ZIPファイル名]ZIPファイル名を指定するだけでOKです。
 コマンド実行後に「Enter password:」と表示されるので、先ほど同様にパスワードを入力します。


 MacのMicrosoft Teamsで「申し訳ございません。画像を失った可能性があります。送信前に再度画像を貼り付けてください。」と表示される
 MacのMicrosoft Teamsで「申し訳ございません。画像を失った可能性があります。送信前に再度画像を貼り付けてください。」と表示される  iTerm2で「Use System Window Restoration Setting」を設定しているとアラートが表示されて機能しない
 iTerm2で「Use System Window Restoration Setting」を設定しているとアラートが表示されて機能しない  Google Chromeのサイト内検索(カスタム検索)機能を別のプロファイルに移行する方法
 Google Chromeのサイト内検索(カスタム検索)機能を別のプロファイルに移行する方法  iPadで入力モードを切り替えずに数字や記号をすばやく入力する方法
 iPadで入力モードを切り替えずに数字や記号をすばやく入力する方法  iPhoneやiPadでYouTubeの再生速度を3倍速や4倍速にする方法
 iPhoneやiPadでYouTubeの再生速度を3倍速や4倍速にする方法  Keynoteで有効にしているはずのフォントが表示されない現象
 Keynoteで有効にしているはずのフォントが表示されない現象  MacのKeynoteにハイライトされた状態でコードを貼り付ける方法
 MacのKeynoteにハイライトされた状態でコードを貼り付ける方法  iTerm2でマウスやトラックパッドの操作を設定できる環境設定の「Pointer」タブ
 iTerm2でマウスやトラックパッドの操作を設定できる環境設定の「Pointer」タブ  AirPodsで片耳を外しても再生が止まらないようにする方法
 AirPodsで片耳を外しても再生が止まらないようにする方法  DeepLで「インターネット接続に問題があります」と表示されて翻訳できないときに確認すること
 DeepLで「インターネット接続に問題があります」と表示されて翻訳できないときに確認すること  Ulyssesの「第2のエディタ」表示を使って2つのシートを横並びに表示する
 Ulyssesの「第2のエディタ」表示を使って2つのシートを横並びに表示する  1つのノートアプリにすべて集約するのをやめた理由|2025年時点のノートアプリの使い分け
 1つのノートアプリにすべて集約するのをやめた理由|2025年時点のノートアプリの使い分け  Notionログイン時の「マジックリンク」「ログインコード」をやめて普通のパスワードを使う
 Notionログイン時の「マジックリンク」「ログインコード」をやめて普通のパスワードを使う  AlfredでNotion内の検索ができるようになるワークフロー「Notion Search」
 AlfredでNotion内の検索ができるようになるワークフロー「Notion Search」  Gitで1行しか変更していないはずのに全行変更した判定になってしまう
 Gitで1行しか変更していないはずのに全行変更した判定になってしまう  Macでアプリごとに音量を調節できるアプリ「Background Music」
 Macでアプリごとに音量を調節できるアプリ「Background Music」  Macのターミナルでパスワード付きのZIPファイルを作成する方法
 Macのターミナルでパスワード付きのZIPファイルを作成する方法  MacBook Proでディスプレイのサイズ調整をして作業スペースを広げる
 MacBook Proでディスプレイのサイズ調整をして作業スペースを広げる  SteerMouseの「自動移動」機能で保存ダイアログが表示されたら自動でデフォルトボタンへカーソルを移動させる
 SteerMouseの「自動移動」機能で保存ダイアログが表示されたら自動でデフォルトボタンへカーソルを移動させる  iPhoneでタッチが一切効かなくなった場合に強制再起動する方法
 iPhoneでタッチが一切効かなくなった場合に強制再起動する方法