0

Google から最新のリポジトリ ディレクトリを初期化してチェックアウトする TCL スクリプトを作成しました。しかし、端末には何も出力されません。開いてみました。

オープンの場合:

初期化するとき、私はこれを持っています...そしてそれはうまくいきます

 if { [ catch { set ID [ open "|repo init -u *android_stuff* "] } cErr ] } {
     puts "Error initializing (${cErr})" }

 while { ![ eof ${ID}] } {
     gets ${ID} Line
     puts "Line: ${Line}" }

同様にチェックアウトするとき....しかし、これは何も出力しません...

 if { [ catch { set ID [ open "|repo sync -j **"] } cErr ] } {
     puts "Error checking out (${cErr})" }

 while { ![ eof ${ID}] } {
     gets ${ID} Line
     puts "Line: ${Line}" }

「exec」で実装しようとしましたが、「open」と同様に印刷できませんでした。

4

1 に答える 1

0

whileループを句に入れる必要がありelseます。エラーをキャッチした場合は、メッセージを出力するだけで、有効なものがあるかのように続行します。$ID

を使用すると、eof1 行が多すぎます。http: //phaseit.net/claird/comp.lang.tcl/fmm.html#eofを参照してください。

于 2012-06-19T20:36:18.133 に答える