Shellの基礎知識(入門編)

【Shell入門】echoで文字を表示してみよう

シェルスクリプトの第一歩として、「画面に文字を表示する」ことから始めてみましょう。今回は echo コマンドを使って、ターミナルに自分のメッセージを出力してみます。動かして覚える体験が、Shellの面白さを実感できるきっかけになります!

Shellの基礎知識

echoとは?Shellでの文字表示の基本

シェルスクリプトで最初に覚えるべきコマンドの1つが「echo」です。これは、ターミナルに文字を表示するための命令で、プログラムの動作確認やメッセージの出力に使われます。

echoコマンドの役割と使い方

echoコマンドは、指定した文字列をそのまま画面に表示します。最もシンプルな使い方は以下の通りです。

echo Hello, World!

ルーキー
「echo」って何をしてるの?
これは「これから書く文字をそのまま表示してね」という命令だよ。ターミナルに表示させたい文章を書くと、それを出力してくれるんだ。
ビープロ

このように、echoを使えば自分の書いた文字がすぐにターミナルに表示されます。これがShellスクリプトの基本的な出力の仕組みです。

ダブルクオーテーションの意味と注意点

echoで文字列を表示する際には、ダブルクオーテーション(")で囲むのが一般的です。特にスペースや記号が含まれる場合は、クオーテーションがないと正しく表示されません。

echo "おはようございます!"

ルーキー
クオーテーションって必要なの?なくても動くよね?
簡単な1単語だけなら不要なこともあるけど、文章やスペースがあるときは絶対に囲んだ方が安全だよ。変なエラーを防げるんだ。
ビープロ

Shellでは、空白や特殊記号を含む文字列を扱う際、クオーテーションで囲まないと文字が分割されたり予期しない動作をすることがあります。初心者のうちは、echoでは毎回クオーテーションを使う癖をつけると安心です。

実践:echoで好きなメッセージを表示しよう

echoの基本を理解したら、実際にいくつかのメッセージを出力して、動きを確認してみましょう。ここでは、あなた自身の言葉でターミナルに表示させてみます。

メッセージを書いて表示してみよう

まずは、好きな文章をターミナルに表示してみましょう。表示される内容が自分で書いたものだと、ぐっと実感がわきます。

echo "今日はShellの勉強中!"

ルーキー
おお!本当に表示された!なんか楽しいかも…
いい感じだね!シンプルだけど、こういう小さな動作が確実に身についていくよ。
ビープロ

文章の中にはスペースや記号が含まれても大丈夫。クオーテーションで囲むことを忘れなければ、問題なく表示されます。

変数と組み合わせて出力する応用テクニック

echoは、Shellの「変数」と組み合わせて使うと、より柔軟な出力ができます。たとえば以下のように使います。

name="ルーキー"
echo "こんにちは、$name さん!"

出力結果:

こんにちは、ルーキーさん!

ルーキー
おお!変数がそのまま文の中に入ってる!
そう!「$変数名」で中身を取り出せるんだ。これができると、スクリプトがグッと実用的になってくるよ。
ビープロ

変数は、あらかじめ値を入れておけば、何度も再利用できます。表示する内容を柔軟に変えられるので、ちょっとした自動化にも使えるようになります。

echoの挙動を理解する上でのポイント

ここでは、echoの動き方についてもう少し詳しく見ていきます。特に「改行」と「オプション指定」、そして似たようなコマンドであるprintfとの違いについて軽く補足しておきましょう。

改行の扱いと -n オプション

通常、echoで文字を表示すると、最後に自動で改行が入ります。つまり、出力された後に次の文字が次の行に続きます。

echo "こんにちは"
echo "ルーキーです"

出力結果:

こんにちは
ルーキーです

ルーキー
それぞれ別の行に表示された!これって自動なの?
そうそう。echoは「勝手に改行してくれる」仕様になってるんだ。でも、改行を入れたくないときはオプションを使えば止められるよ。
ビープロ

改行を止めたいときは -n オプションを使います。これにより、次のechoが同じ行に続けて出力されます。

echo -n "こんにちは、"
echo "ルーキーです"

出力結果:

こんにちは、ルーキーです

ルーキー
おお、つながって表示された!ちょっとしたことで印象が変わるね。
その通り。小さな制御だけど、echoを自在に扱えるとスクリプトの見た目も整ってくるよ。
ビープロ

echoとprintfの違い(軽く補足)

echoに似たコマンドに「printf」があります。echoが手軽に使える一方、printfはより細かい制御ができる出力命令です。

printf "こんにちは、%sさん!\n" "ルーキー"

ルーキー
文字の中に「%s」ってあるの何これ?
これは「ここに変数や値を入れる場所だよ」っていう記号。C言語のprint文に近い書き方なんだ。
ビープロ

printfは改行も自分で指定する必要があり、やや文法が複雑です。初心者はまずechoに慣れておいて、必要になったときにprintfを使えばOKです。

次のステップにつなげよう!

echoで文字を表示できるようになると、Shellスクリプトの中で「動作の確認」や「条件ごとの出力」ができるようになります。ここから先の学習に進むために、どのようにechoが役立つのかを少しだけ先取りしてみましょう。

条件分岐やループでもechoは大活躍

次回以降の記事では、「if文」や「for文」などの制御構文を扱っていきますが、echoはそれらの中でも頻繁に登場します。

if [ "$name" = "ルーキー" ]; then
 echo "ようこそ!ルーキーさん"
fi

ルーキー
あ、前に出てきたechoがまた出てきた!条件分岐の中でも使えるんだ?
そうそう。echoは「いま何が起きてるか」を表示するのにぴったり。デバッグにも便利なんだ。
ビープロ

このように、echoはスクリプトの流れを視覚化するツールとしても大活躍します。今のうちにしっかり慣れておくと、後々かなり助かります。

Shellの基礎知識でもっと理解を深めたい方へ

今回の内容で「Shellって面白いかも」と感じた方もいるかもしれません。構文の仕組みまでしっかり理解しておくと、今後のスクリプト作成にも自信が持てるようになります。

構文の意味や仕組みをより深く学びたい方には、別途「Shellの基礎知識シリーズ」も用意しています。入門シリーズが一通り終わったあとに、ぜひチェックしてみてください。

ルーキー
動かしてるだけでも楽しいけど、「なんでそうなるのか」はやっぱり気になるかも…
その好奇心、大事!でも今は「動かして感覚を掴むフェーズ」。順番に進めていこう!
ビープロ

このまま入門シリーズを順に読み進めることで、少しずつスクリプトの力がついてきます。次回は「変数」を使って、もう一歩スクリプトらしい動きを体験してみましょう!

▶ 続きはこちら:Shell入門:変数を使って計算しよう

よく読まれている記事

1

IT入門シリーズ 🟢 STEP 1: ITの基礎を知る(ITとは何か?) 📌 IT初心者が最初に学ぶべき基本知識。ITの概念、ネットワーク、OS、クラウドの仕組みを学ぶ ...

2

「私たちが日々利用しているスマートフォンやインターネット、そしてスーパーコンピュータやクラウドサービス――これらの多くがLinuxの力で動いていることをご存じですか?無料で使えるだけでなく、高い柔軟性 ...

3

この記事は、Linuxについて勉強している初心者の方向けに「Shellスクリプト」について解説します。最後まで読んで頂けましたら、Shellスクリプトはどのような役割を担っているのか?を理解出来るよう ...

-Shellの基礎知識(入門編)