我的问题非常简单。请考虑以下代码段:
set cvsPath "C:/Program Files (x86)/cvsnt/cvs.exe"
puts [exec $::cvsPath log filename]
puts "------------- END OF SCRIPT ---------------------"
这个打印日志然后“------------- END OF SCRIPT ---------------------”。
set cvsPath "C:/Program Files (x86)/cvsnt/cvs.exe"
puts [exec $::cvsPath -n upd]
puts "------------- END OF SCRIPT ---------------------"
这个打印更新消息并退出。为什么?如何防止退出?
P.S。退出的原因是exec
cvs -n upd
输入...
答案 0 :(得分:2)
可能是因为你正在使csv.exe抛出错误。试着抓住它,
set cvsPath "C:/Program Files (x86)/cvsnt/cvs.exe"
if {[catch {puts [exec $::cvsPath -n upd]} result]} {puts $result}
puts "------------- END OF SCRIPT ---------------------"
答案 1 :(得分:0)
cvs -qn upd
代替cvs -n upd
无效!
以下也有效:
if {[catch {exec $::cvsPath -n upd} result]} {puts $result}
puts "------------- END OF SCRIPT ---------------------"
我应该提到$ result包含更新消息,这意味着cvs -n upd
会抛出错误。 cvs -qn upd
不投掷的地方。