31歳ほぼ未経験からIT業界へ転職。備忘録と勉強になればと思いサイトを立ち上げました。

IT技術のあれこれ

Linux

初心者のシェルスクリプト入門

更新日:

シェルスクリプトを動かせてインフラサーバエンジニアはやっと一人前、むしろやっとスタートライン、なんて個人的に思っていましたが、とても苦手…というか嫌いなので何年もほぼ触ったことがなかったのですが(他の人が作ったシェルを何となく読めたり、簡単な修正をする機会はありました)、3年目にして、今さらながらシェルに触れる機会が増えてきたので、基礎から学習するためにも備忘録として残していきます。

そもそもシェルって何?シェルとシェルスクリプトの違いは何?の詳細については、とても時間が足りないのと、全然詳しくないのでWikipediaなどで調べていただければと思います。

まずは、概要だけを説明していきます。
※時間を見つけて、シェルの説明も含めて少しずつ記載していきたいと思っています。

 

シェルとは?

シェルとは、Linux、Unixでコマンドをまとめて(ファイル内にまとめて)記述し、簡単な繰り返し処理から、複雑な処理までを実行できるプログラムのようなものだと個人的には理解しています。(条件分岐や繰り返しがあるのでプログラムのようなものと捉えています)

 

シェルスクリプトの作成

それではいきなりシェルスクリプトの作成から始めます。

シェルスクリプトの拡張子は「.sh」になります。
調べた結果、Linuxには拡張子が必要がないので、「.sh」は必須とではないようなのですが、スクリプト系のファイルと判断するためのマナーとして、「.sh」を付けているようです。

それでは、任意のディレクトリにテスト用ファイルを作成します。

$ vi test.sh

 

簡単な記述から記入していきます。

#!/usr/bin/bash

1行目にはどのシェルを使用して実行するのかを記述します。

これはルールみたいなものなので、使用したいシェルに合わせて宣言していきます。
(UNIX/Linuxでは標準でbashが使用されているようなので「#!/usr/bin/bash」がよく見る記述だと思っています。「#!/usr/bin/bash」以外を見たのは1回だけありました)

続いて、処理したい内容を記述していきます。

ここでは、実行すると、「test shell」と画面に表示する処理を記述しました。

echo test shell

 

「test.sh」ファイルの内容は以下の記述になりました。

#!/usr/bin/bash
echo test shell

 

パーミッションの変更

シェルスクリプトは、作成しただけでは実行できないことが多いです。

それはシェルスクリプトを実行するには権限が必要であるためです。

まずはlsコマンドで権限変更前のパーミッションを確認します。

ls -la

chmodコマンドでファイルの権限を変更します。

chmod 755 test.sh

再度、lsコマンド権限が変更されたことを確認します。

ls -la

 

シェルスクリプトの実行

シェルスクリプトを実行する方法はいくつかあります。

./test.sh
sh test.sh

 

他にも方法があれば、随時追記していきます。

 

【注意事項】
当サイトで紹介している内容は、あくまでも素人が調べて実践した方法になります。レジストリ変更やインストールなどは自己責任で実施して下さい。
PCが動かなくなったなどの事象が発生しても、当方では一切の責任を負えませんので、あらかじめご了承下さい。

スポンサーリンク

-Linux
-,

Copyright© IT技術のあれこれ , 2024 AllRights Reserved.