このコマンドラインは何をしますか?

このコマンドラインは何をしますか?

これを私にもわかるように説明してください:

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

二行目:

cat mytemp | grep barrymp

stdout に呼び出されたファイルの内容を出力し、出力をフィルタリングするために指定されたコマンドmytempの標準入力にリダイレクトします。grepbarrymp

注記には、 と同じであると書かれていますps ax | grep "barrymp"。これは、最初の行から同じになるはずであるためだと推測していますmytemp。その行の後半も同様に一時ファイルをスキップし、コマンド出力を grep へのパイプに直接リダイレクトします。

できる限り詳しく説明してみましたが、まだ不明な点があればお知らせください。

関連情報