2012-05-04 15 views
3

私は以下のコードを書き、それを実行しようとしました。しかしExpectスクリプトのDo-while

コード「DO {実行中に、 『i』は無効なコマンド名」を行うに直面します。

#!/usr/bin/expect 
set val 0; 
set input 5; 

do { 
    puts "\nval = $val" 
    set input [expr $input-1]; 
    set val [expr $val+1]; 
} while {input} 

を私はこの問題を解決するために教えてください。 Expectスクリプトには存在しますか?

答えて

5

短い答えはノーです。

やや長めの答えは次のとおりです。

while true { 
    puts "\nval = $val" 
    incr val 
    if {[incr input -1] == 0} break 
} 

十分な議論がon the Tcl wikiを見つけることができます。

関連する問題