expect:将 spawn 命令的输出存储到变量中
expect: store output of a spawn command into variable
在我的 "expect" 脚本中:
set $REPOS "/path/to/repo/"
set $REV 73
set LOG [spawn svnlook log -r $REV $REPOS]
这将存储在变量"LOG"中的内容:16345(内存位置)。
它应该存储在变量 "LOG" 中的内容:"some message of the svn commit log"。
执行 bash 命令然后将该输出存储到 expect 变量似乎是一个问题。
你有什么想法吗?我是新手期待和tcl。
你不需要在那里生成。尝试:
set LOG [exec svnlook log -r $REV $REPOS]
如果你真的想使用spawn:
spawn vnlook log -r $REV $REPOS
expect
set LOG $expect_out(buffer)
在我的 "expect" 脚本中:
set $REPOS "/path/to/repo/"
set $REV 73
set LOG [spawn svnlook log -r $REV $REPOS]
这将存储在变量"LOG"中的内容:16345(内存位置)。
它应该存储在变量 "LOG" 中的内容:"some message of the svn commit log"。
执行 bash 命令然后将该输出存储到 expect 变量似乎是一个问题。
你有什么想法吗?我是新手期待和tcl。
你不需要在那里生成。尝试:
set LOG [exec svnlook log -r $REV $REPOS]
如果你真的想使用spawn:
spawn vnlook log -r $REV $REPOS
expect
set LOG $expect_out(buffer)