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番出口を避けるために
一重引用符を試しましたか? grep '[g] runt' – Robert
一重引用符を忘れて、私の答えを見てください。 – Robert