UNIXプロチャレンジその1

これから記すことは研修で行われた内容なので面白いことはない.
記憶の定着のためのメモであるが,UNIXの種類によって異なることがあるかもしれない

大学でLinuxGNOMEのコマンドに関して多少習ったことを記憶してるが,
現状では基本的なディレクトリとファイルの操作しか記憶にない.
とりあえず大学で教えておいて欲しかったこと
・manコマンド
以上.実際問題としてwebで調べれば出てくるのだけれど,
CLI上で操作することでCLIに慣れるし,コマンドオプションも少しは覚えたかな?

それはそれとして,本日学習したことは…
・リダイレクション
・パイプライン


リダイレクション
UNIXの通常操作では,標準出力および標準エラー出力が予めきまっている.
だが,入出力先が特定されている訳ではないことが特徴だ.
例えば,エラーメッセージを端末に吐かせず,ファイルに流すなど
入出力を切り替えることをいう.

普通にコマンドを実行して,その出力をファイルに書きこむ場合は

$ command > file

標準出力と標準エラー出力の両方をファイルに書き込むには

$ command >& file
もしくは
$ command >file 2>&1

標準エラー出力のみをファイルに書き込むには

$ command 2> file

※標準出力のリダイレクション">"には1が省略されていて"1>"ということ
また,追記する際は">>"で


パイプライン
前のコマンドの標準出力が,次のコマンドの標準入力となっている場合,
その出力データを次のコマンドに食わせてやることができる.
この機能をパイプラインといい,"|"で表す.

形式的には

$ command1 | command2

マルチユーザでユーザをソートして表示する場合

$ who | sort


本日はここまで.