【はじめてのシェルスクリプト】シェルスクリプトの作成方法

シェルスクリプトとは

シェルで実行するコマンドがまとまったもの。

拡張子として「.sh」を付けています。

シェルスクリプトとシェルは厳密にいうと違うものですが、この記事ではシェルと呼ぶことにします。

 

今回作成するシェルの紹介

ls -la というコマンドを知っていますか?

ファイルの情報を権限なども含めみることができるのですが、特定のファイルの情報が見たいときには、

ls -la | grep "検索ファイル名"

と打たねばなりません。

そのため今回は、

lg "検索ファイル名"

で実行できるように設定したいと思います。

 

シェルの置き場を作る

置き場所はホームディレクトリの下のbinディレクトリに格納するといいようです。

まず、ホームディレクトリに移動

cd ~

binディレクトリを作成

sudo mkdir bin

 

作成されたのを確認しましょう

ls

 

シェルを作成する

まず先ほど作成したbinへ移動します

cd bin

 

lgファイルを作成します

vi lg

 

 キーで入力モードに切り替えます

 

ls -la | grep $1

と入力しましょう。

$1は第一引数の受け取り場所です。

 

キーで入力モードを終了します

その後、本来であれば

:wq

で保存して終了なのですが、このファイルには権限を与えていないため、保存ができないと思います。

なので、

:w !sudo tee %

と入力し、強制保存をします。

 

その後、

:q!

で強制終了します。

これでシェルの作成ができました。

 

 

パスを通す

このままでは、/home/binにいる状態でしかシェルを呼べません。

そのため、どこにいても呼び出せるように設定します。

export PATH=$PATH:/home/bin

 

これでどこにいても呼び出せる状態になりました。

しかし、今設定したパスは、サーバを再起動すると消えてしまいます。

 

これを保存するためには、ホームディレクトリにある「.bash_profile」に先ほどのコマンドを再度入力します。

export PATH=$PATH:/home/bin

 

もし、ファイルがない場合は作成しましょう

vi .bash_profile

そして強制保存

:w !sudo tee %

強制退出

:q!

 

これを設定することで、サーバ起動のたびに登録したコマンドが呼び出されるため、永久的にパスが有効になりました。

コメントを残す

CAPTCHA