0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Linux 標準入出力

Posted at

標準入力

プログラムの基本的な入力。通常はキーボードからの入力

標準出力

プログラムの標準的な出力。通常は端末ディスプレイに出力

標準エラー出力

プログラムのエラーメッセージを出力するための出力。通常は端末ディスプレイに出力

リダイレクト

標準入出力先を変更することをリダイレクトと呼ぶ。

標準入力のリダイレクト

# 通常のcatコマンドの動き
# この動きはcatコマンドに用意された動きで、ファイルが指定された場合はファイルの内容を表示する
cat ファイル名

# リダイレクトを利用した場合
# キーボードからの入力ではなくファイルの内容を入力先として指定している
cat < ファイル名

# 上記の出力結果は同じだが中身の動きが違う

標準出力のリダイレクト

# 通常のlsコマンドの動き
ls
=> 画面に表示される

# リダイレクトを利用した場合
# 結果を画面に表示ではなくlist.txtファイルに出力する
ls > list.txt

# > だけではもしlist.txtが既に存在した場合上書きされてしまうため >> とすると末尾に追記となる
# ファイルが存在しない場合もこの書き方は有効
ls >> list.txt

標準エラー出力のリダイレクト

# 通常のエラー表示(lsコマンドに存在しないファイル名を渡す)
ls /xxx
# => エラー文言

# リダイレクトを利用する
# 結果を画面にではなくerror.txtファイルに出力する
ls /xxxx 2> error.txt

標準出力と標準エラー出力をまとめる

# > list.txt で標準出力をlist.txtにリダイレクト
# 2>&1 2(標準エラー出力)を&1(標準出力)にリダイレクト

ls /xxxx > list.txt 2>&1

dev/nullファイル

スペシャルファイルと言われる特殊なファイル。

  • 入力先として指定しても何も内容を返さない
  • 出力先として指定しても書き込んだデータは保存されない

という特性を持っていてコマンドの結果をどこにも表示、保存したくないときに利用する

# この場合エラーが出た時のみ標準エラー出力として画面に表示される
ls /xxxx > /dev/null

# この場合エラー自体もリダイレクトして/dev/nullに出力される
ls /xxxx > /dev/null 2>&1

パイプライン

複数のコマンドを連携させる仕組み。次のように書く

コマンド | コマンド | コマンド

# ls コマンドの標準出力をlessコマンドに渡すことで、行数が長くなっても一ページづつ閲覧できるようになる
ls / | less

# 間にcat -nを挟み、番号つきで出力する
ls / | cat -n | less

標準エラー出力も同じように出力する
ls / 2>&1 | cat -n |less

フィルタ

catコマンドのように標準入力を入力として受け取り、標準出力に出力するコマンドのこと。

代表的なフィルタコマンド

コマンド 役割 使用例
cat ファイルの内容をそのまま出力する。複数ファイルの内容を結合して表示するのにも使える。 cat file.txt
head ファイルの先頭数行を表示する。デフォルトは10行。 head -n 5 file.txt
tail ファイルの末尾数行を表示する。リアルタイム更新も可能(-f オプション)。 tail -n 10 file.txt
grep 指定した文字列や正規表現に一致する行を検索し、表示する。 grep "error" file.txt
sort ファイルの内容を行ごとに昇順または降順に並べ替える。 sort file.txt
uniq 連続して重複する行を削除する(sortと組み合わせて使うことが多い)。 `sort file.txt
tac ファイルの内容を逆順(最後の行から最初の行)に表示する。 tac file.txt
wc ファイルの行数、単語数、文字数をカウントする。 wc file.txt
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?