当使用expect来使用exec
和awk
设置变量值时,可以使用snot throw错误,但也不会提取值。
我的摘录如下
set routername [lindex $argv 0]
set routerip "exec awk {{ /$routername/print \$2 }} /tmp/RIPTable"
puts "router ip is : $routerip\n"
期望routerip的值为127.0.0.1
,因为这是文件中名称的IP。
看到的输出如下
router ip is : exec awk {{ /$routername/print \$2 }} /tmp/RIPTable
设置routerip时出了什么问题?
答案 0 :(得分:3)
你应该这样写:
set routerip [exec awk "/$routername/ { print \$2 }" /tmp/RIPTable]