シェルスクリプトがTelnetまたはプログラムでコマンドを実行するようにします。

シェルスクリプトがTelnetまたはプログラムでコマンドを実行するようにします。

リモートでログインするデバイスやFTPやOpenSSLなどのプログラムでコマンドを実行するシェルスクリプトを作成したいと思います。 FTPで次の方法を見つけました。

#!/bin/sh
HOST='0.0.0.0'
USER='User'
PASSWD='Pass'
FILE='~/Desktop/file.txt'
RFILE='file.txt'

ftp -n $HOST <<END_SCRIPT
quote USER $USER
quote PASS $PASSWD
binary
passive
put $FILE $RFILE
quit
END_SCRIPT
exit 0

リモートでログインしたデバイスや他のプログラムで同様の操作を実行するにはどうすればよいですか?

答え1

しばらく前に同様のものが必要でした。次のように試すことができます。

#!/bin/sh

HOST='0.0.0.0'
USER='User'
PASSWD='Pass'
CMD=''

(
echo open "$HOST"
sleep 2
echo "$USER"
sleep 2
echo "$PASSWD"
sleep 2
echo "$CMD"
sleep 2
echo "exit"
) | telnet

PS1:私は衛星経由で接続しているので、「スリープ2」を使います。 LANなら、まったく「スリープ」が不要な場合があります。

PS2:CMD変数に必要な内容を入力してください。

関連情報