0

私が使うとき

2> >(tee stderr.log >&2)

コマンドの先頭に sh-4.1$ を追加したシェルでは、機能しません。ただし、先頭に username@hostname が表示されていれば機能します。

また、これはPHPで画面を開いているときです。これを機能させるには、スクリプトをどのように変更すればよいですか? スクリプトは次のとおりです。

php exec("screen -S SCREENNAME -p 0 -X stuff 'COMMAND 2> >(tee stderr.log >&2)");
4

1 に答える 1

2

プロンプトの先頭に「sh」がある場合、それは bash がsh 互換モードで実行されており、プロセス置換がありません。コマンドはbash 経由で実行する必要があります。実行bash -cして、実行するコマンドを文字列として渡します。

于 2012-06-12T06:11:17.403 に答える