私が理解できる方法で説明してください:
ps ax >mytemp; more <mytemp … same as … ps ax | more
cat mytemp | grep barrymp … same as … ps ax | grep “barrymp”
答え1
一度に1行ずつ、各行を半分に分割します。
ps ax >mytemp; more <mytemp
出力を取得ps ax
しますmytemp
。セミコロンは、同じ行にある別のコマンドの開始を示します。 2番目のコマンドはコンテンツを取得してmytemp
供給しますmore
(ファイルを画面ごとに表示するポケットベル)。これは、あなたのコメントにps ax | more
よると、一時ファイルを生成しないことを除いて、実際と同じですmytemp
。どちらも効果的に出力を取り、ps ax
最終的に標準入力にします。more
2行目:
cat mytemp | grep barrymp
stdoutを呼び出すファイルの内容を印刷し、出力をフィルタリングするために指定されたコマンドの標準入力にリダイレクトしますmytemp
。grep
barrymp
するとコメントにはと同じだと言われますps ax | grep "barrymp"
。私はこれがmytemp
最初の行と同じであるべきだと仮定します。行の2番目の半分も一時ファイルをスキップし、コマンド出力をgrepパイプに直接リダイレクトします。
できるだけ最善を尽くして分析してみましょう。それでも不明な場合はお知らせください。