大学サークルのイントロ用資料です https://speakerdeck.com/silmin_/linuxcommandru-men の続きです
Linux Command 入門 2Secprj Intro-phase
View Slide
標準入力 / 標準出力standard input / standard output
入力と出力 input / outputコマンドには入力と出力となるファイルが存在する$ cp の場合は...$ cp file1 file2コマンド本体 引数
入力と出力 input / outputコマンドには入力と出力となるファイルが存在する$ cp の場合は...$ cp file1 file2コマンド本体 引数input output
入力と出力 input / outputコマンドには入力と出力となるファイルが存在する$ cp の場合は...cp file2file1 input output- inputされたファイルを複製- 指定された名前でoutput
Terminalへの出力がある
Terminalへの出力がない
$ ls は出力先を指定してない
どうやって出力先を決めるか$ cp のように指定したわけではないTerminalがたくさんあったら?指定してないけど,出力先が決まっているlsfile1dir/input Terminaloutput 勝手に決まってる?
どうやって出力先を決めるか何も指定しない場合に暗黙的に使用される出力先のことを標準出力という(厳密にはlsが標準出力を指定している)lsfile1dir/input Terminalstandardoutput 暗黙的に使用される出力先
標準入力は標準出力の入力版何も指定しないとき,コマンドが入力を求めた場合,標準入力から入力する標準入力bcコマンドは入力された文字列に対し,簡単な四則演算をして出力する
標準入力は標準出力の入力版何も指定しないとき,コマンドが入力を求めた場合,標準入力から入力する標準入力bc TerminalstandardoutputTerminalstandardinput
パイプとリダイレクトどちらも標準入出力を引き回す方法パイプ |:コマンドの標準出力を他のコマンドの標準入力にするリダイレクト <, >, ...:コマンドの標準入出力を他のファイル宛にする$ ls -l /bin | less$ bc < file1 > file2
パイプ(Pipe)コマンドの標準出力を他のコマンドの標準入力にする$ ls -l /usr/bin$ ls -l /usr/bin | lesslsの引数は何でもいい今回はlessを使う関係上長めなやつを選んだ
パイプ(Pipe)コマンドの標準出力を他のコマンドの標準入力にする$ ls -l /usr/bin$ ls -l /usr/bin | lessls Terminalstandardoutputls Terminaloutputlessstandardoutput
パイプ(Pipe)コマンドの標準出力を他のコマンドの標準入力にする$ ls -l /usr/bin | lessls Terminaloutputlessstandardoutput標準出力したと思っている標準入力されたと思っている
リダイレクト(Redirect)コマンドの標準入出力を他のファイル宛にする$ bc > file2$ bc < file1$ bc$ bc < file1 > file2bc Terminalstandardoutputfile1 inputbc file2outputTerminalstandardinputbc TerminalstandardoutputTerminalstandardinputbc file2outputfile1 input
パイプとgrepコマンドgrepコマンドは検索文字列と検索対象を受け取り,結果を出力する$ grep str file1
パイプとgrepコマンド検索対象は標準入力から受け取ることもできる$ ls -l /usr/bin | grep apt
パイプとリダイレクトを組み合わせた例$ tail はファイルの最後数行のみを出力するコマンド$ cat hoge.out | grep hoge.9 > hoge9
正規表現(regular expression)文字列が特定のパターンにマッチするかどうかを判定してくれるこのほかにもたくさんある文字 説明. 任意の1文字にマッチ+ 直前の文字が1回以上繰り返す* 直前の文字が0回以上繰り返す\n 改行文字\t タブ文字基本的な正規表現一覧 | murashun.jphttps://murashun.jp/article/programming/regular-expression.html
正規表現(regular expression)CLI操作をする上で便利な場面がいくつかある$ ls -l *.py