私は現在、猫のプログラムに取り組んでいます。パイプやリダイレクション演算子をunixで解析するには?
./catpr file1 file2 file3 | grep string
私はパイプ演算子が存在するが指摘により、解析の終了をマークする方法がわからない:私が午前問題は、私は、UNIXのコマンドを実行したときにということです。私は現在、システムコールを使用してCでこのcatプログラムを開発しています。したがって、引数を追跡するためにargvを使用します。しかし、配列内の '|'に対応するコンテンツを見るたびに、本当に変わったものが表示されます。
"私は、配列の中で '|'に対応するコンテンツを見るときに、本当に変わったものが表示されます._" - コードを表示してください。 if(strcmp(argv [4]、 "|")== 0) 'のようなものが動作します。 –
パイプはシェルによって解釈されます。あなたはそれに対処する必要はありません。 – Ryan
配列の最後を読み取っている可能性があります。あなたの 'argc'を確認してください。 –