MiracleJobLogo
エンジニアのエンジニアによるエンジニアのためのサイト
News 07/25 おすすめ情報に 『 【案件】Azure AD関連の認証設計/azureの基本設計 』 を追加しました。
会員登録するとキャリア診断やサイトに参加することができます。
あなたにおすすめな技術情報、資格、仕事などをお知らせします。

無料会員登録


パスワードを忘れた場合
LINEで送る
MiracleJobBanaLeft1
MiracleJobBanaLeft2


Linuxのコマンドを知る(echo)
profile-img
投稿者: Tomoyaさん
投稿日:2023/07/12 14:33
更新日:
like-img
分類
技術
テクノロジー
Unix系サーバ
キャリア
運用・保守
投稿内容

今回はechoコマンド、またechoコマンド一緒に使う機会が多いリダイレクトとパイプ(|)について説明していきます。


echoコマンドは文字列を標準出力するためのコマンドです。

<基本的な使い方>
 echo 文字列


<主なオプション>

 -e:「\\n」で区切られたところで改行して表示する。
   ※実際にうつときは\\はバックスラッシュに置き換える
 -n:文字列の最終行の改行をせずに表示する

リダイレクト
echoコマンドではリダイレクトをする場面が実際の業務で多く出てくると思います。
(私自身、業務でリダイレクトをすることが何度かありました。)
リダイレクトは標準出力先をファイルなどに変更するときに使います。
リダイレクトは「>」や「>>」で表します。

Linuxではファイルに文字列を書きこんだり、テキストを編集するにはvimなどのエディタを使うことが一般的です。
ただ、数文字や1~2行のテキストを書き込むのにその都度vimでファイルを編集するのは手間になってきます。
そのようなときにリダイレクトを使用すると、vimを開かず、コマンドラインからコマンドを実行するだけで済むので便利です。
リダイレクトはechoなどのコマンドと組み合わせて使います。

<使用例>
 #example.txtの中身を確認する
 cat example.txt
 apple

 #example.txtに文字列を追記する
 echo banana >> example.txt
 cat example.txt
 apple
  banana

リダイレクトをする際に、「>」をした場合はもともとあった文字が上書きされて消えてしまうので注意が必要です。
あくまで既存のファイルに追記したいという場合には、必ず「>>」を使用しましょう。

パイプ
リダイレクトの活用方法としてパイプ(|)を使うことがあります。
パイプはコマンドによる標準出力を別のコマンドに橋渡しをするものです。
パイプを用いると、1行で複数のコマンドをまとめて実行できます。

<基本的な使い方>
コマンド1 | コマンド2 | コマンド3 |.....

また、出力を別のコマンドの引数として扱いたい場合はxargsコマンドを使用します。
xargsは基本的にパイプと一緒に使用されます。一つ目のコマンドで出力した結果をパイプで繋いでxargsで引数として扱い、別のコマンド実行します。

<使用例>
cat data.txt
apple
grape
lemon

# catの結果をxargsに引数として渡す
cat data.txt | xargs touch
ls
data.txt apple grape lemon

# 任意の文字列に当てはまるファイルを表示
find -type f | xargs grep "apple"
./data.txt:apple

# aから始まるファイルをすべて削除
find a* | xargs rm
コメント


MiracleJobBanaRight1
MiracleJobBanaRight2
MiracleJobBanaRight3