シェルスクリプトの基本その1
どうも、かりんです
はじめに
これから作業を自動化したいと考えている方には、シェルスクリプトを覚えておくことをおすすめいたします。
業務で使用する場面もありますし、プライベートでもファイル処理などを効率化できるため、覚えておいて損はございません。
そのため、まずは基礎的な部分から順を追って記録していきます。
シェルスクリプトとは何か
簡単に申し上げますと、ターミナルで使用するコマンドを並べて書いたファイルのことです。
たとえば、同じ操作を何度も繰り返しているような場合、それらをスクリプトとしてまとめておけば効率化につながります。
スクリプトの作成と実行権限の付与
シェルスクリプトは通常 .sh という拡張子で保存いたします。
例として、以下のような内容のファイルを hello.sh という名前で保存してください。
実行権限の付与
作成したばかりのスクリプトファイルには、通常「実行する権限」がありません。 そのため、以下のコマンドで実行権限を付与する必要があります。
まずは実行権限の確認からしていきます。
次に実行権限をを付与していきます
このコマンドで実行権限が付与されます。
確認していきます
このコマンドにより、ファイルに「実行可能」という属性が追加されます。
見ての通り、-rwxr-xr-xとなっていて「x」が追加されていので、xが実行権限という意味です。
詳しくはまた別の記事で解説します。
スクリプトの実行方法
実行権限を付与した後、以下のように実行いたします。
.(ドット)と /(スラッシュ)は「カレントディレクトリ(今いるフォルダ)にあるファイルを実行する」という意味になります。
実行すると以下のように出ます。
解説
・#!/bin/bash : 「このスクリプトは bash で実行します」という意味を示す記述です
・echo : 文字列を表示するコマンドです
※macOSではデフォルトシェルがzshの場合でも、スクリプト内でbashを指定すればbashで実行されます。
bashの方が安定して使いやすいのでおすすめです。違いはまた別で解説します。
おわりに
次回は、基本的なコマンド(cd、ls、cp など)の使い方や、簡単な制御構文(条件分岐など)について記述していく予定です。
また、現在はカレントディレクトリ(今いるフォルダ)からのみ実行できますが、今後はどこからでもスクリプトを実行できるように、環境変数(特に $PATH)の設定方法についても取り上げる予定です。これにより、自作のスクリプトを「コマンドのように」扱うことができるようになります。
まずは「ファイルに実行権限を与えてから、実行する」という基本操作をしっかり押さえていただければと思います。
Discussion