【初心者入門】Macで学ぶシェルスクリプトの基礎|実行方法と基本構文まとめ

Mac

Macのターミナルで毎回手動でコマンドを入力していると、「これ、まとめて自動で実行できたらいいのに…」と思ったことはありませんか?

その願いを叶えるのがシェルスクリプト(Shell Script)なんです。

今回は、Macで使えるシェルスクリプトの基礎知識から、簡単な自動化スクリプトの作成方法までを初心者向けにわかりやすく解説します。


スポンサーリンク

シェルスクリプトとは?

シェルスクリプトとは、複数のターミナルコマンドを1つのファイルにまとめて実行できる仕組みです。

拡張子は通常「.sh」で、実行すると中の命令が上から順番に実行されます。

Macの標準シェルは「zsh」ですが、bashや他のシェルでもスクリプトはほぼ共通なので安心してくださいね。


シェルスクリプトの基本構造

以下は典型的なシェルスクリプトの構文です:

#!/bin/bash

echo "Hello, World!"
date

解説

  • #!/bin/bash:このスクリプトはbashで実行されるという宣言(シバン)
  • echo:文字列を出力する
  • date:現在日時を表示

とてもシンプルな構造ですね。


シェルスクリプトの作成と実行方法

実際にスクリプトを作って実行してみましょう。

ステップ1:テキストファイルを作成

nano myscript.sh

または任意のエディタ(Visual Studio Codeなど)を使ってもOKです。

ステップ2:ファイルにスクリプトを書く

#!/bin/bash

echo "スクリプト開始"
ls -l
echo "完了!"

ステップ3:実行権限を付ける

chmod +x myscript.sh

ステップ4:実行する

./myscript.sh

この手順で、初めてのシェルスクリプトが実行できるようになります。


基本的な構文・使い方

よく使う構文をいくつか紹介しますね。

変数

name="Taro"
echo "こんにちは、$nameさん"

条件分岐(if)

if [ -f "file.txt" ]; then
  echo "file.txt は存在します"
else
  echo "file.txt はありません"
fi

繰り返し(for)

for i in 1 2 3
do
  echo "番号: $i"
done

引数の受け取り

#!/bin/bash
echo "第1引数は $1 です"

実行:

./myscript.sh Hello
# → 第1引数は Hello です

これらの構文を覚えると、かなり柔軟なスクリプトが作れるようになります。


Macならではのポイント

Mac特有の注意点をまとめました。

デフォルトシェルはzsh

macOS Catalina以降はzshがデフォルトです。bashで書く場合は#!/bin/bashと明示しましょう。

Finderから直接開いても実行されません

スクリプトファイルをFinderから直接開いても実行されません。必ずターミナルから実行してください。

LaunchAgentで自動起動設定も可能

スクリプトをLaunchAgentで自動起動設定することも可能です(応用編として覚えておくと便利)。

これらのポイントを押さえておくと、Macでのスクリプト作成がスムーズになります。


まとめ

シェルスクリプトは、Macターミナルの操作を効率化・自動化する最強ツールです。

毎回同じ手順を繰り返しているなら、それをスクリプトにしておけば作業時間を大幅に削減できます!

今日のまとめ

  • .shファイルにコマンドをまとめて書くことで自動実行できる
  • chmod +xで実行権限を忘れずに
  • 変数・条件・繰り返し・引数などを使えば柔軟なスクリプトが作れる
  • Macではzshとbashの違いに注意!

コメント

タイトルとURLをコピーしました