-1

コマンドの出力を期待して解析し、それが返すものを変数として設定する方法を理解しようとしています。基本的に、リスト IE のようなコマンド出力があります。

OneA
OneB
OneB
TwoA
TwoB
TwoC
ThreeA
ThreeB
ThreeC

基本的に、すべての値を見つけて、One から始めて、各インスタンスで別のコマンドを実行する必要があります。
stat OneA のようなもので、出力
を出力し、Stat OneB
、Stat OneC のように...
うまくいけば、それは理にかなっています。

ありがとう

デイブ

4

1 に答える 1

1

シェルパイプラインを使用する方が簡単かもしれません:

send -- "yourCommand | grep '^One' | xargs -L 1 stat\r"

期待すると、次のようになります。

send -- "yourCommand\r"
expect -re $thePrompt
foreach line [split $expect_out(buffer) \n] {
    if {[string match {One*} $line]} {
        send -- "stat $line\r"
        expect -re $thePrompt
    }
}
于 2012-10-20T14:27:29.183 に答える