用語集:パイプ・リダイレクト

実務で頻出する「パイプ・リダイレクト」関連の用語を、一言定義+最小実例でサッと確認。
入出力の流れを制御し、複雑な処理をシンプルに組み立てられるようにします。

今回取り扱うBashについての基本構文について以上にも、Bashの基本を網羅している解説記事はこちら → Bash

このページで達成できること

  • 標準入力/出力/エラーの流れを自在に切り替える
  • 複数コマンドをパイプでつなぎ、効率的に処理する
  • 出力を保存しつつ画面表示するテクニックを身につける
  • 順序や評価の落とし穴を理解して安全に活用

すぐ引けるミニ索引

用語一言で代表例
リダイレクト入出力の流れ替え> file, 2> err.txt
標準入力リダイレクト入力をファイルから与えるcmd < in.txt
標準出力リダイレクト出力をファイルに保存cmd > out.txt
標準エラーリダイレクトエラー出力を保存cmd 2> err.txt
出力統合標準出力と標準エラーをまとめるcmd > all.txt 2>&1
パイプ(出力を次のコマンドに渡す
tee出力を複製して保存+表示`cmd
ヒアドキュメント複数行入力を渡すcat <<EOF ... EOF
ヒアストリング1行入力を渡すcat <<< "text"

用語解説(繰り返しブロック)

リダイレクト(redirect)

とは:コマンドの入出力をファイルやFDに流し替える仕組み。
最小実例

cmd > out.txt 2> err.txt

関連:FD / stdout / stderr
落とし穴:順序で挙動が変わる(2>&1 >file は stderr が画面に残る)。

標準入力リダイレクト

とは:ファイルをコマンドの入力に渡す仕組み。
最小実例

sort < data.txt

関連:stdin / <
落とし穴:リダイレクトを忘れると入力待ちで停止する。

標準出力リダイレクト

とは:通常の出力をファイルに保存する仕組み。
最小実例

ls > list.txt

関連:stdout / >
落とし穴:上書きがデフォルト。追記は >>

標準エラーリダイレクト

とは:エラー出力を別ファイルに保存する仕組み。
最小実例

ls nofile 2> error.txt

関連:stderr / 2>
落とし穴:stdout と stderr を混ぜないと出力がバラける。

出力統合(stdout+stderr)

とは:標準出力と標準エラーをまとめる方法。
最小実例

cmd > all.txt 2>&1

関連:リダイレクト / FD
落とし穴:指定順序を誤るとまとめられない。

パイプ(pipe)

とは:あるコマンドの標準出力を次のコマンドの標準入力に接続。
最小実例

grep "500" access.log | wc -l

関連:stdin / stdout / フィルタ系コマンド
落とし穴:前段が大量出力すると後段がボトルネックになる。

tee

とは:標準出力を複製し、画面表示とファイル保存を同時に行う。
最小実例

make 2>&1 | tee build.log

関連:パイプ / ログ収集
落とし穴:追記は tee -a を忘れがち。

ヒアドキュメント(here document)

とは:複数行文字列を入力としてコマンドに渡す。
最小実例

cat <<EOF
line1
line2
EOF

関連:リダイレクト / 展開制御
落とし穴<<'EOF' とクォートすると変数展開されない。

ヒアストリング(here string)

とは:1行文字列を入力として渡す。
最小実例

cat <<< "hello world"

関連:リダイレクト / ヒアドキュメント
落とし穴:Bash拡張機能。POSIX sh では使えない。

運用の現場Tips

  • ログ管理:stdout と stderr を分けて保存し、解析を容易に
  • 順序の確認:リダイレクトの評価順で結果が変わる → 常にテストする
  • デバッグ時は tee:画面に出しつつログ保存して解析可能
  • スクリプト設計:ヒアドキュメントで設定ファイルを自動生成する習慣を持つ

関連リンク(学習ハブ内)

学びを“実務”へつなぐ最短ルート

独学で積み上げた「わかった」を、仕事で使える「できる」へ。
学習ハブの内容を踏まえて、実務に直結する学習設計・添削・質問環境を整えたい人は、下記のページで具体的な進め方を確認してください。

Bash玄

はじめまして!Bash玄です。

エンジニアとしてシステム運用に携わる中で、手作業の多さに限界を感じ、Bashスクリプトを活用して業務を効率化したのがきっかけで、この道に入りました。「手作業は負け」「スクリプトはシンプルに」をモットーに、誰でも実践できるBashスクリプトの書き方を発信しています。

このサイトでは、Bashの基礎から実践的なスクリプト作成まで、初心者でもわかりやすく解説しています。少しでも「Bashって便利だな」と思ってもらえたら嬉しいです!

# 好きなこと
- シンプルなコードを書くこと
- コマンドラインを快適にカスタマイズすること
- 自動化で時間を生み出すこと

# このサイトを読んでほしい人
- Bashに興味があるけど、何から始めればいいかわからない人
- 定型業務を自動化したい人
- 効率よくターミナルを使いこなしたい人

Bashの世界に一歩踏み出して、一緒に「Bash道」を極めていきましょう!

Bash玄をフォローする