2
我已經讓我的腳本儘可能地連接,登錄和運行命令。但我堅持如何將命令的響應保存到文件中,而不保存整個會話。如何保存來自telnet腳本的響應?
#!/bin/sh
Var=1
while [ $Var -lt 20 ]
do
HOST='IPa.ddr.ess.'$Var
USER='MyUser'
PASSWD='MyPassword'
CMD='MyCommand'
(
echo open "$HOST"
sleep 1
echo "$USER"
sleep 1
echo "$PASSWD"
sleep 1
echo "$CMD"
#I want to save the output from my $cmd to an varaible $Output
#Then I want to write "$HOST - $Output" to a file named "output.txt"
sleep 2
echo "exit"
) | telnet
Var=$((Var + 1))
done
我會很感激任何幫助,或者在正確的方向指針
他還沒有'$輸出';問題是'Output = $(... | telnet)'會捕獲所有的身份驗證並啓動,而不僅僅是命令的最終輸出。 – chepner
哦,我忘了驗證。我現在明白這個問題。爲了提出第二個解決方案,我將進行編輯。 – Aissen
如果可能,'ssh'是一個好主意。不過,如果應用程序位於某種只能通過telnet訪問的內部/嵌入式/遺留設備上,這是一個很好的問題。 – chepner