例如,如果输出(在expect_out(buffer)
中)是
blah
blh blah
asdjsudfsdf
如何将第二行存储到变量中?到目前为止我有这个:
foreach line [split $expect_out(buffer) "\n"] {
if [lindex $line 1] {
set variable $line
}
}
但这不起作用,它说变量variable
未定义。我尝试添加一个计数器,但这也不起作用。必须有一个更简单的方法!
答案 0 :(得分:4)
是的,有一种更简单的方法:
set lines [split $expect_out(buffer) \n]
set variable [lindex $lines 1]
或一行
set variable [lindex [split $expect_out(buffer) \n] 1]
请注意,您知道Tcl命令返回的内容:split
返回一个列表。然后使用lindex
查找列表的第二个元素。