そのため、コンソールのテキストの色を変更するこのスクリプトがあります。問題は、STDIN と引数の両方から文字列を受け入れ-s
ますが、結果に STDIN が含まれない場合があることです。スクリプトをそれ自体にパイプするときにのみこれに気づきました(以下を参照)
php color.php -s Hello, -c green -S underline | php color.php -s " Bob" -c red -S bold
上記の bash スクリプトは、常に " Bob" を表示しますが、スクリプトのどの部分も変更せずに、一連の試行で数回だけ "Hello" を表示します。私が知る限り、含まれるか含まれないかは非常にランダムで、目立ったパターンはありません。
だから私の質問は、どうすればこれを防ぐことができますか?