telnetはもう使わない

タイトルの通り、私はもう、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コマンドを削除している場合があるかもなので、完全卒業はできないかもしれないですが)