概要
Macの非エンジニアの人が「パスワード付きのZipファイルを作りたい!!」と言ったときに、毎回「PC貸してください。」と言ってターミナルをがちゃがちゃするのも色々嫌なので、ターミナルの操作をほぼなしでパスワード付きのZipを作るメモ
※ 内容は非常に初歩的なShell Scriptだと思います。
ソースコード
エンジニアの人は、ターミナルを開いて、以下のコマンドを入力してzip.commandというファイルを作成しましょう。
# vim zip.command
vimを開いたら、以下のコードを入力して:wqで保存しましょう。
# !/bin/sh
echo "ファイルをドラッグ&ドロップ:"
read in
echo "zip名を入力:"
read out
infile=$(basename $in)
echo "パスワード:"
read pass
cd $(dirname $in)
zip -r --password=$pass $out.zip $infile
そのままだと実行できないので、ファイルに実行権限を与えましょう。
# chmod +x zip.command
これで完成です。
軽く解説
echo : 画面に出力します。
dirname : 対象ファイルが存在するディレクトリを表示します。
basename : 対象パスのファイル名を抜き出します。
read : キー入力を待つことができます。 out, inと続きますが、それが変数名になりますので$out, $inというように使うことができます。
zip : -rオプションをつけることでファイル/フォルダの両方に対応できます。 --passwordオプションをつけることでパスワード付きのzipを作ることができます。
使い方
- zip.commandをダブルクリックします。すると、ターミナルが開きます。
- 
出力ファイル名を入力:と出たら、出力したいファイル名を入力します。outと入力した場合、out.zipというファイルが生成されます。
- 
元ファイルをドラッグ・アンド・ドロップしてください:と出たら、ZipにしたいファイルorフォルダをFinderからドラッグ・アンド・ドロップします。こうすることで、対象ファイルの絶対パスが入力されます。
- パスワードを入力します。 (入力したパスワードは表示されないので戸惑う人もいるはず。また管理者パスワードではなく、Zipにかけるパスワードなのでそこも伝える必要がありそうです。)
- ファイルが完成します。このプログラムではDesktop上に作られるようになっているので、「Desktopにできますよ」と一声かけてあげましょう。
