zipでまとめてメール送信

http://slashdot.jp/comments.pl?sid=397734&cid=1330634

uuencode/uudecode (スコア:1)
usuke (6857) : 2008年04月15日 18時18分 (#1330634)
CentOS5.0をサーバ構成でインストールしたマシンだと思うんですが uuencode/uudecodeがありませんでした。 ttyrec -u でお手軽にファイルのダウンロードができたので結構使っていたのですが、なんか代替のコマンドってのがあるんでしょーか?

yumでsharutilsパッケージをインストールすれば良いのは知ってるんですがお客さんが契約しているレンタルサーバだったりするので勝手にインストールしちゃうという選択肢は無しで。

[ 返事を書く ]
Re:uuencode/uudecode (スコア:1)
ken3 (3270) : 2008年04月15日 19時34分 (#1330673) ホームページ
つuudecode [shinh.org]
[ 返事を書く | 親コメント ]
Re:uuencode/uudecode (スコア:1)
Ryo.F (3896) : 2008年04月16日 10時51分 (#1331019) 日記
最近だと/usr/bin/base64を使う。デコード時は-dオプションを付ける。
これがない場合は、/usr/bin/openssl base64な。これも-dでデコード。

http://lab.hde.co.jp/2008/07/post-7.html

#パスワードを格納したファイルを$3で指定されたパスワード付きでzip圧縮する。
zip -P $pass ${proc_num}.zip ${proc_num}.txt > /dev/null 2>&1

#ヘッダ部分の書き込み
echo "From: PASSWDDAEMON
To:${mail_to}
Subject:${user_name}'s newpasswd
Content-Type:application/octet-stream
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
filename=\"${user_name}password.zip\"

"> ${proc_num}.body

#zipファイルを添付ファイルとして書き込み
cat ${proc_num}.zip | /usr/bin/openssl enc -e -base64 >> ${proc_num}.body

#作成したメールを$2で指定されたメールアドレスへ送信する。
cat ${proc_num}.body | /usr/sbin/sendmail -- $mail_to

#作成したファイルを削除する。
rm -f ${proc_num}.*