telnetでログインして何か実行した結果をテキストに保存して情報収集したり、複数のサーバにログインして同じコマンドをひたすら入力したりするのはつらいものです。操作端末がWindowsでTeratermが使える環境ならマクロでどうとでも出来るのですが、UNIXのコンソール環境でどうにかしなければいけなかったり、cronで裏で粛々と動いて欲しい時は困ってしまいます。 そんな事があってperlを頑張って勉強してNet::telnetとか使って無理矢理実現させていたんですが、某氏からこんなやり方を教えてもらい、あまりの簡単さにちびりそうになりました。というかちびりました。 telnet接続後の入力文字列をechoで羅列。タイミングはsleepで調整。 cmds.sh #!/bin/sh sleep 1; echo user-name sleep 1; echo password sleep 5;