監視などで、smtpサーバの動作まで確認したい時に使えるかも。
#!/bin/sh LOG=/tmp/smtp_status.log if [ $# -ne 1 ] ; then echo "Usage: ./smtp-status.sh SMTP-HOST" exit 2 fi CHOST=$1 { sleep 1 echo "HELO $CHOST"; sleep 1 echo "QUIT" } | telnet $CHOST 25 >& $LOG cat $LOG | grep 250.* > /dev/null if [ "$?" -eq 0 ] ; then echo "$CHOST Connect OK" exit 0 else echo "$CHOST Connect NG" exit 1 fi
パイプの使い方が分かってないせいか一時ファイルを作成しなきゃ処理できなかった。
もっとうまい方法ありそうだけど、こんなもんで。