使用 expect 脚本从 ssh 捕获输出
Capture output from ssh with expect script
我想在 file.txt.
中捕获 expect 脚本的输出
#!/usr/bin/expect -f
match_max 10000
set timeout 120
eval spawn ssh 10.0.0.0
set prompt ":|#|\$"
interact -o -nobuffer -re $prompt return
send "password\r"
expect ">"
send "sh cdp neighbors detail\r\r "
expect ">"
send "\n"
sleep 5
这就是我所拥有的,他从交换机上读取了我的 cdp 邻居详细信息。但现在我想将此输出推送到我目录中的一个文件中。所以我可以在交换机上自动执行命令,并获得输出。该脚本完全有效,但我找不到足够的信息来读取 expect 脚本的输出。
提前致谢!
全称
找到了,很简单:
./expectscript > output.txt 2>&1
你可以利用log_file
。
log_file switch.log;# Logging it into the file 'switch.log'
只需将其添加到您要捕获日志记录的行之前。查看 了解更多信息。
我想在 file.txt.
中捕获 expect 脚本的输出#!/usr/bin/expect -f
match_max 10000
set timeout 120
eval spawn ssh 10.0.0.0
set prompt ":|#|\$"
interact -o -nobuffer -re $prompt return
send "password\r"
expect ">"
send "sh cdp neighbors detail\r\r "
expect ">"
send "\n"
sleep 5
这就是我所拥有的,他从交换机上读取了我的 cdp 邻居详细信息。但现在我想将此输出推送到我目录中的一个文件中。所以我可以在交换机上自动执行命令,并获得输出。该脚本完全有效,但我找不到足够的信息来读取 expect 脚本的输出。
提前致谢!
全称
找到了,很简单:
./expectscript > output.txt 2>&1
你可以利用log_file
。
log_file switch.log;# Logging it into the file 'switch.log'
只需将其添加到您要捕获日志记录的行之前。查看