【簡単】シェルスクリプトでテキストを改行する方法

シェルスクリプトでの改行
  • このエントリーをはてなブックマークに追加
  • Pocket

シェルスクリプトで複数行を出力したいとき、echoを連続するのが嫌だな、と感じることがあるはずだ。

もちろんシェルスクリプトにも改行の方法が用意されている。いくつかご紹介しよう。

改行を出力したいとき

シェルスクリプト実行時に「メッセージを改行し、複数行にまたいで表示したい」もしくは「複数行の結果を保存したい」という場合もあるだろう。

方法はいくつかあるが最も簡単なのは、echoコマンドを連発しリダイレクトで結果を保存する、といった方法だろう。

他にも手段があるので、このページで紹介しようと思う。

echoコマンドをならべる

もっともベーシックな方法。echoを連発しても改行はされる。

vi strings-ex1.sh

実行結果

$ ./strings-ex1.sh

改行の例

以降はどれもほぼ同じ結果となる。

echoコマンドの改行

オプションとして「-e」をわたすことと「"」で文字列を囲むこと、改行したい位置に「\n」改行コードをいれる。

vi strings-ex2.sh

ファイルヘ保存

シンプルパターン

ファイルへ保存する場合は順にリダイレクトしてゆく。

vi strings-ex3.sh

見ての通り、あまり美しくはない。

{}を使用してスマートにする

{}を使用すると「グルーピング」が可能になる。グルーピングをすると複数のコマンドを一つのコマンドとして認識するようになる。これによりリダイレクトの回数を減らせる。

vi strings-ex4.sh

printfを利用する

C言語などでは馴染深い「printf」を使用することもできる

vi strings-ex5.sh

printfを利用、もう少し書式を設定する

vi strings-ex6.sh

catコマンドを利用する

catコマンドとリダイレクトを駆使すると、任意の終端コードを指定して入力を受付ることができる。

vi strings-ex7.sh

まとめ

このページでは改行の出力方法についてまとめてみた。その時々でいずれかの手段を使い分けていただければと思う。

  • このエントリーをはてなブックマークに追加
  • Pocket

このページの続きや関連ページは下記から一覧で確認できる。

短期間でエンジニアになる方法

・「まったくの初心者だけどエンジニアになりたい!」

・「プログラマーとして転職をしたい!」

という方はリナックスアカデミーの資料を見てみてください。短期間で未経験からエンジニアになることができるスクールとして15年間選ばれ続けてきた理由やノウハウが載った資料です。

エンジニアの入り口に立つために必要な勉強技術の最新動向本当に使えるIT資格学習に役立つ国からの奨励金などの情報が詰まっています。

無料で2,3日中にお手元にお届けします。


資料を見てみる

SNSでもご購読できます。

コメントを残す

*