Upgrade to Pro — share decks privately, control downloads, hide ads and more …

UNIX/Linuxのキモである標準入出力・リダイレクション・パイプ を説明してみよう!

F-Yuki
January 23, 2021

UNIX/Linuxのキモである標準入出力・リダイレクション・パイプ を説明してみよう!

F-Yuki

January 23, 2021
Tweet

More Decks by F-Yuki

Other Decks in Programming

Transcript

  1. シェル
 $ echo "hello world" 
 ユーザがコマンド入力 
 《標準入力》
 カーネルの処理結果をターミナルで表示で

    きるようにシェルで解釈 
 結果を表示
 《標準出力》
 hello world 
 「標準入出力の流れ」
 Linuxカーネル
 シェルによってカーネルが分かるように解 釈してコマンド実行 
 PC端末のターミナルから入力 
 PC端末のターミナルへ出力 

  2. シェル
 $ echo "hello world" > test.txt 
 カーネルの処理結果をターミナルで表示で きるようにシェルで解釈 


    リダイレクション
 Linuxカーネル
 シェルによってカーネルが分かるように解 釈してコマンド実行 
 PC端末のターミナルから入力 
 PC端末のtest.txtファイルへ出力(test.txt内に保存されているイメージ) 
 ユーザがコマンド入力 
 《標準入力》
 結果を表示
 《標準出力》

  3. シェル
 $ ls -1 | sort -r 
 Linuxカーネル
 シェルによってカーネルが分かるように解 釈してコマンド実行

    
 PC端末のターミナルから入力 
 PC端末のターミナルへ出力 
 プログラミング関連 
 名称未設定フォルダ      ・         ・    結果を表示
 《標準出力/$ sort -r》
 ユーザがコマンド入力 
 《標準入力/$ ls -1》
 Linuxカーネル
 シェルによってカーネルが分かるように解 釈してコマンド実行 
 カーネルの処理結果をターミナルで表示で きるようにシェルで解釈 
 シェル
 カーネルの処理結果をターミナルで表示で きるようにシェルで解釈 
 
 パイプ機能を使い $ ls -1の結果を$ sort -rへ渡す
 《標準出力/$ ls -1》
 
 パイプ機能を使い渡された結果が $ sort -rコマンド
 《標準入力/$sort -r》
 「|」(パイプ)

  4. シェル
 $ ls -1 | sort -r 
 Linuxカーネル
 シェルによってカーネルが分かるように解 釈してコマンド実行

    
 PC端末のターミナルから入力 
 PC端末のターミナルへ出力 
 プログラミング関連 
 名称未設定フォルダ      ・         ・    結果を表示
 《標準出力/$ sort -r》
 ユーザがコマンド入力 
 《標準入力/$ ls -1》
 Linuxカーネル
 シェルによってカーネルが分かるように解 釈してコマンド実行 
 カーネルの処理結果をターミナルで表示で きるようにシェルで解釈 
 シェル
 カーネルの処理結果をターミナルで表示で きるようにシェルで解釈 
 
 パイプ機能を使い $ ls -1の結果を$ sort -rへ渡す
 《標準出力/$ ls -1》
 
 パイプ機能を使い渡された結果が $ sort -rコマンド
 《標準入力/$sort -r》
 「|」(パイプ)