タイトルの通り、私はもう、telnetを使うことはほぼほぼないでしょう。
なぜなら、ncコマンドの方が便利だからです。
対話式が面倒くさい
Telnetを使わない理由は、対話式が面倒くさいから、です。
例えば、Telnetの入力を自動化しようと思うと、次のようになると思います。
#!/bin/bash
MAIL_SERVER="localhost"
PORT="25"
MAIL_FROM="root@localhost"
RCPT_TO="root@localhost"
expect -c "
set timeout 10
spawn telnet ${MAIL_SERVER} ${PORT}
expect \"220\"; send \"helo world\n\"
expect \"250\"; send \"mail from: <${MAIL_FROM}>\n\"
expect \"250\"; send \"rcpt to: <${RCPT_TO}>\n\"
expect \"250\"; send \"data\nSubject: hoge\nhoge\n.\nquit\n\"
expect "
exit 0
このように、帰ってくる文字列をいちいち確認しなければならず、ちょー面倒くさいです。
一方、ncコマンドだとこうなります。
#!/bin/bash
MAIL_SERVER="localhost"
PORT="25"
MAIL_FROM="root@localhost"
RCPT_TO="root@localhost"
nc ${MAIL_SERVER} ${PORT} << EOF
helo world
mail from: <${MAIL_FROM}>
rcpt to: <${RCPT_TO}>
data
Subject: hoge
hoge
.
quit
EOF
exit 0
というように、入力したいものを書くだけなので、ちょー楽です。
ついでに、ちょー高機能なコマンドなので、使いこなすとちょーかっこいいです。
というわけで、これからはncコマンド信者になろうと思います。
(セキュリティ対策として、ncコマンドを削除している場合があるかもなので、完全卒業はできないかもしれないですが)
コメントを残す