expect

    2熱度

    2回答

    我正在寫一些pexpect的東西,基本上是通過telnet發送命令。 但是,我的遠程登錄會話可能會死(由於網絡問題,電纜被拉,什麼都沒有)。 如何初始化一個telnet會話,如果它死了,我可以抓住它並告訴它重新連接,然後繼續執行它所在的代碼。 這可能嗎?

    5熱度

    2回答

    我在bash中寫了一些expect命令。 腳本: #!/bin/bash set timeout -1 expect -c " spawn telnet $IP $PORT1 sleep 1 send \"\r\" send \"\r\" expect Prompt1> interact timeout 20 { sleep 1 } expect { Prompt2>

    0熱度

    1回答

    這是故事。 我有一臺Debian 5服務器自動啓動到本地用戶帳戶。 本地用戶帳戶具有下列的.profile #!/bin/bash SERVERPASS="password" function with_password { expect << END set timeout 900 spawn $2 expect *assword:* send -- "${1}\r" expe

    0熱度

    3回答

    我正在編寫一個腳本來與GDB進行交互,並需要GDB認爲它已連接到終端。我發現了一些可以用於C函數的參考,這些參考可以用來做這件事,但我的程序是用Groovy(Java)編寫的,我想避免使用JNI接口。我認爲更好的做法是使用期望。 爲腳本: #!/usr/bin/env expect eval spawn $argv interact 當從我的腳本運行: "expect -c 'eval s

    2熱度

    3回答

    我想遠程登錄到Cisco路由器,登錄並執行本地存儲在路由器閃存中的Tcl腳本。這個Tcl腳本會執行一些處理,並且應該返回一個嵌套的散列(首選)或代表XML文檔的字符串。 有沒有辦法將Tcl嵌套散列映射到Perl嵌套散列,或返回表示XML文檔的字符串? Expect是否允許我執行上述任何操作,以及如何操作?

    1熱度

    2回答

    這是我hello.sh shell腳本 VALID_NAME="abcd" echo "Name: " read name if [ "$name" == $VALID_NAME ]; then echo "correct" else echo "unexpected input" fi =============================== =======

    1熱度

    1回答

    我在寫我的第一個expect腳本,所以我可能失去了一些東西很明顯,但我發現下面頗令人費解:如果我運行預期,並使其高管東西 $ expect expect1.1> exec echo a a expect1.2> $ cat > test.exp exec echo a $ expect test.exp $ 手動,它的作品。如果我在腳本中放入相同的命令,它不起作用。這是怎麼回事?

    0熱度

    1回答

    如何使用expect腳本或任何其他腳本將文件遞歸複製到遠程服務器? 約束條件。 1.我們無法限制將被複制的文件數量。 2.文件大小可以是1mb或10mb。 我被以下腳本嘗試過。但它只能傳輸4或5個文件。 (我需要傳輸的文件,近200或300以上)與 expect eof 唐 spawn scp -r /home/test [email protected]:/home/test sleep

    0熱度

    2回答

    這是我的腳本 echo "Name:" read name if [ "$name" == "abcd" ]; then echo "correct username" echo "Password:" read password if [ "$password" == "pwd" ]; then echo "Hello" else

    2熱度

    2回答

    我在bash中使用expect。我想我的腳本telnet到一個盒子,期待一個提示,發送一個命令。如果現在有不同的提示,則必須繼續,否則必須再次發送該命令。 我的腳本是這樣的: \#!bin/bash //I am filling up IP and PORT1 here expect -c " set timeout -1 spawn telnet $IP $PORT1 sleep 1