パイプの仕組み入門|コマンドをつないで処理を効率化|UNIX Cafe

当サイトでは、コンテンツの一部に広告を掲載しています。

UNIX Cafe | 第6回

UNIX では、
コマンドの出力を、次のコマンドへそのまま渡すことができます。
その仕組みが パイプ(|) です。

目次

このページでわかること

このページでは、UNIX の パイプ(|) の基本的な考え方と使い方を、初心者向けにやさしく解説します。

  • パイプ(|)が何をしているのか
  • コマンド同士をつなぐ意味
  • grepwcless との組み合わせ
  • ファイルを作らずに処理を流す考え方

はじめに|パイプとは何か

パイプは、
「前のコマンドの出力を、次のコマンドの入力にする」ための仕組みです。

リダイレクトが「行き先を変える」操作なら、
パイプは 「流れそのものをつなぐ」 操作だと考えると分かりやすくなります。

ユニ先生

パイプは、コマンド同士をつなぐホースみたいなものだよ。

パイプの基本形

ls | grep txt

このコマンドでは、

  1. ls がファイル一覧を出力
  2. その出力を grep が受け取り
  3. txt を含む行だけを表示

という流れが生まれています。

パイプの考え方を整理する

パイプを使うときは、「左から右へ流れる」 という意識がとても大切です。

コマンドA | コマンドB | コマンドC
  • A:データを出す
  • B:受け取って加工する
  • C:さらに加工・表示する

よく使うパイプの組み合わせ

行数を数える|wc

cat log.txt | wc -l
  • cat log.txt:ファイルの中身を出力
  • wc -l:行数を数える

👉 log.txt の行数だけが表示されます

ファイル名を絞り込む|grep

ls | grep report
  • ls:すべてのファイルを表示
  • grep reportreport を含む行だけ抽出

👉 report を含むファイル名だけが表示されます

長い出力を読む|less

dmesg | less
  • dmesg → システムメッセージを出力
  • less:1画面ずつ表示

q キーで終了できます。

ユニ先生

出力が長いときは、less に渡すと落ち着いて読めるよ。

エラーが出た場合の考え方

Unable to obtain kernel buffer: Operation not permitted

このメッセージは、
一般ユーザーでは実行できない という意味です。

管理者権限で実行すると読める場合があります。

sudo dmesg | less

Try it!|パイプを体感してみよう

まずは、短くて分かりやすい例から試してみましょう。

  • ls | grep txt → .txt ファイルだけを表示
  • cat /etc/passwd | head -n 5 → 最初の5行だけを表示
  • ps aux | grep bash → bash が動いているプロセスを探す

パイプを使うと、「小さなコマンドを組み合わせて、大きな仕事をする」
という UNIX らしい考え方が見えてきます。

まとめ|パイプで広がる UNIX の世界

  • パイプ(|)は出力を次へ渡す仕組み
  • ファイルを作らずに処理をつなげられる
  • 組み合わせ次第で、できることが一気に増える
ユニ先生

コマンドは言葉、パイプは流れ。
つなげるほど、UNIXは面白くなるよ。

🔗 関連リンク

  • 👉 リダイレクトの基本|ターミナルでファイルに出力する方法をやさしく解説 PCfan
  • 👉 ファイルのパーミッション入門|読み書き権限の基本をやさしく解説 PCfan

さらに学びたいあなたへ

📘 用途ごとに選ぶ Linux のおすすめ本

あわせて読みたい
レベル・用途別おすすめ Linux 本リスト|UNIX Cafe UNIX Cafe | 第65回 Linux の世界には、「はじめて触る人」「コマンドを覚えはじめた人」「サーバーに挑戦したい人」と、さまざまな段階があります。そんなときに、自分...
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

のいのアバター のい UNIX Cafe 編集部

UNIX Cafe は、むずかしい言葉をできるだけ使わず、物語を読むような気持ちで気軽に学べる場所です。
プログラミングは、アイデアをコンピューターに伝えるための「ことば」。
簡単な単語と文法を覚えることで、誰でもターミナルから便利なコマンドを使えるようになります。
コーヒーを片手に立ち寄るような気持ちで、やさしいプログラミングの世界を、
そっとのぞいてみてください。

目次