ターミナル上でのコマンド操作をする機会が増えると 
 「毎回この手順は面倒だ、自動化したい…」 
 と思うようになる。  
 この記事は「シェルスクリプトの文法を学びたい」 
 というよりは「適当でいいからサクッと自動化したい」 
 という目的で書いている。  
何はともあれHello, World.
基礎中の基礎、Hello, Worldができれば
ある程度のコマンドは自動化できるようになる。
Hello, World出力コマンドの代わりに
実行したいコマンドを列挙すれば良い。
まずは「hello.sh」というファイルを作成する。
必須ではないが、シェルスクリプトのファイルだと分かるように
 拡張子を.shにするのが一般的だ。  
「hello.sh」の中身は以下の通りだ。
#!/bin/bash
# この行はコメント
echo "Hello, World."
exit 0ここのポイントは4つある。
-  #!/bin/bashは、bashを利用するためのおまじない
-  一行コメントは#で始める
- 実行したいコマンドをそのまま書く
-  exit 0で、コマンドが正常終了したことを意味する
 ちなみに、exit 1とすると、異常終了であることを表す。  
実行方法
実行方法は2通りあるが、
さっさと実行したいのであれば1の方法をおすすめする。
方法1:「bash ファイル名」で実行する
$ bash hello.sh
Hello, World.方法2:「(パスを含めた)ファイル名」で実行する
これは対象のファイルを実行可能ファイルにしておく必要がある。
$ ls -l hello.sh
-rwxr-xr-x  1 username  staff  40  5 31 20:14 hello.sh
$ ./hello.sh
Hello, World. ちなみに、chmod +x ファイル名で  
実行可能ファイルにすることが可能。
引数
上記の状態で、決まり切ったコマンドは十分実行できるが、
実行時に引数を指定したいときがある。
以下の3つを覚えておけば良い。
-  $0:実行コマンド自身(パスを含む)
-  $1:第一引数
-  $2:第二引数
#!/bin/bash
echo $0
echo $1上記の「hello.sh」を実行してみると、
以下のような実行結果となる。
# 実行結果
$ bash hello.sh こんにちは
hello.sh
こんにちはまとめ
-  行頭は#!/bin/bashで始める
-  (なくても実行できるが)exit 0で締めくくる
- 実行したいコマンドを一行ずつ並べておけば、順次実行してくれる
if文やfor文、変数定義など他にも文法はいろいろ存在するが
ここで紹介したことが活用できれば、ある程度の作業自動化は十分可能である。

 
  
  
 