Shell

シェルスクリプトの入門編1:シェルスクリプトを実行してみよう

シェルスクリプトの入門コーナーをはじめました。

簡易的なプログラムをOSで標準的に備わっている言語で処理できるって中々魅力的ではないですか?

サーバに入ってバッチ処理を動かすときにも使われます。

例えば以下のコマンド

これもシェルスクリプトで「ホームディレクトリ配下にあるファイルやフォルダを出力して」という命令をしています。

こういった命令を自動化し、都度コマンドを打たなくてもサーバが勝手に動いてくれるようにできれば

日々のOS操作の業務がもっとシンプルになったりできるので、是非覚えておいて損はないと思います。

とりあえず"Hello World!"を出力

ほとんどのプログラム言語でも"Hello World!"からはじまるので、シェルスクリプトでもそれをやってみます。

hello-world.sh

作成したら、下のコマンドで実行し「Hello World!」と出力されれば成功です。

ターミナル上で打っている

というコマンドをを.shの拡張子のファイルに記述し、それをbashコマンドで呼び出して実行しているだけです。

複数のコマンドを実行

先程の例ではechoコマンドで文字列を出力するだけでしたが、もちろん複数のコマンドを記述して、それを順番通りに実行することも可能です。

make-files.sh

ディレクトリを作成して、そのディレクトリ内にファイルを作成するというコマンドです。

予め決まっているコマンド群をミスすることなく実行できるので簡単な作業でもスクリプトファイルにしておくと便利です。

SSHに入ってデプロイするコマンドサンプル

GitlabのCI/CDを使って対象のサーバの自動デプロイをするときにもシェルスクリプトは応用できます。

以下の例ではLaravelのプロジェクトのリポジトリとDBを最新にするサンプルです。

ssh-deploy.sh

まとめ

  • シェルスクリプトはOSに対する命令である。
  • スクリプトファイルにコマンドの一連を記述しておけば、ファイルを実行するだけで済み、入力ミスが無くなる
  • サーバに入って、デプロイなどのセンシティブな作業はスクリプトファイルにまとめて実行すべき(できれば自動で

-Shell

© 2021 Shiro's secret base