2017-05-11 7 views
1

[]でgrepを実行しているときに致命的なエラーが表示されるのはなぜですか?Pythonファブリック、[]を使ってgrepが失敗する理由

ワーキング:

In [37]: run("""ps aux | grep "grunt" """) 
    [worker2] run: ps aux | grep "grunt" 
    [worker2] out: root  21414 0.0 0.0 16476 5632 pts/0 Ss+ 03:10 0:00 /bin/bash -l -c ps aux | grep "grunt" 
    [worker2] out: root  21475 0.0 0.0 11752 884 pts/0 S+ 03:10 0:00 grep grunt 
    [worker2] out: 

    Out[37]: 'root  21414 0.0 0.0 16476 5632 pts/0 Ss+ 03:10 0:00 /bin/bash -l -c ps aux | grep "grunt" \r\nroot  21475 0.0 0.0 11752 884 pts/0 S+ 03:10 0:00 grep grunt' 

に動作していない:

In [38]: run("""ps aux | grep "[g]runt" """) 
    [worker2] run: ps aux | grep "[g]runt" 

    Fatal error: run() received nonzero return code 1 while executing! 

    Requested: ps aux | grep "[g]runt" 
    Executed: /bin/bash -l -c "ps aux | grep \"[g]runt\" " 

    Aborting. 
    An exception has occurred, use %tb to see the full traceback. 

    SystemExit: run() received nonzero return code 1 while executing! 

任意のアイデアを2番が機能していない理由として?イサキが本当に実行しない場合には、(角括弧をすべき使用している場合

grep "[g]runt" | tee

これはgrepのが原因で、文字通り何も見つからないしません。このように置くgrepのリターンは、という1番出口を避けるために

+0

一重引用符を試しましたか? grep '[g] runt' – Robert

+0

一重引用符を忘れて、私の答えを見てください。 – Robert

答えて

1

仕事してみてください)

+0

これは私の問題を解決しました、ありがとう! –

関連する問題