この記事の内容
- リダイレクトについて
-
echoコマンドについて -
|(パイプ)について
リダイレクトとは?
リダイレクトとは、一般的には、強制的にwebページに飛ぶことを指すことをいう。例でいうと、ページのURLを変えたときや、ドメイン名の変更の際に使われる。
今回Linuxで使われるリダイレクトとは、標準出力や標準入力、標準エラー出力その「向かう先を変更する」ことを意味している。言葉だけではわかりづらいので、実例を交えながら説明していきます。
echoコマンド
標準出力の代表的なコマンドにechoコマンドがあります。echoコマンドは、1.入力したコマンドを画面に出力、2.指定ファイルに出力、3.指定ファイルに追記ができます。
1.入力したコマンドを画面に出力
$ echo hoge
hoge # 結果
2.指定ファイルに出力
$ echo hogehoge > fuga.txt
$ cat fuga.txt
hogehoge # 標準出力がfuga.txtに出力された
3.指定ファイルに追記
$ echo envader >> fuga.txt
$ cat fuga.txt
hogehoge
envader # fuga.txtに新たな標準出力が追記された
このうち2.指定ファイルに出力、3.指定ファイルに追記の2つがリダイレクトにあたる。
| 記号 | 説明 |
|---|---|
| > | 標準出力をファイルに出力 |
| >> | 標準出力をファイルに追記 |
参考:https://envader.plus/course/1/scenario/1006
応用 パイプ「 | 」について
リダイレクトの情報としてもう1つパイプ|というものがあります。|は、コマンドの標準出力を別のコマンドにつないでパイプラインを構成する便利な制御演算子です。複数のコマンドを1行にまとめることができ、とても便利なものなので、覚えていきましょう!
$ コマンド1 | コマンド2
実用例
$ ps aux | grep nginx
root 1037 0.0 0.1 141124 1488 ? Ss 2021 0:00 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
www-data 1041 0.0 0.2 143944 2808 ? S 2021 0:11 nginx: worker process
prostudy 5347 0.0 0.1 15888 1076 pts/3 S+ 21:06 0:00 grep --color=auto nginx
psコマンドでOS内で動いているプロセスの中から、grepコマンドでnginxと書かれた文字を検索をしています。このように|(パイプ)は、2つのコマンドの橋渡しの役割を与えています。
また、|を複数使うには、
$ コマンド1 | コマンド2 | コマンド3 | コマンド4
のように使うことができます。
終わりに
今回は、リダイレクトに使われるecho コマンドと|(パイプ)ついて学びました。標準出力に使うechoコマンドやコマンドを2つ以上使うときに必要な|(パイプ)は、使う機会が多いです。忘れずに、復習しておこう!
また、今回学んだechoコマンドや|(パイプ)は、progateの環境構築版Envaderという学習サイトで学ぶことができます。上記Linuxコマンド以外にも、様々な環境構築を手を動かしながら学ぶことができるので皆さんの学習にぜひ役立ててみてください。
参考資料
https://envader.plus/
https://envader.plus/courses
https://envader.plus/course/1/scenario/1006
https://eng-entrance.com/linux-redirect