PATHを設定して、自作のコマンドを遊び倒す!!!

例えば以下のようなシェルスクリプトを書きます。

----- hello.sh -------

#!/bin/bash

echo "Hello, world!!!"


そうしたら、以下のchmodコマンドですべてのユーザに対するファイルの実行権限を与えます。

$ chmod +x  hello.sh

つぎに、新たなディレクトリ、/Users/username/bin

を作成し、そこに作成したスクリプトファイルを移動します。

$ makdir  /Users/username/bin
$ mv hello.sh /Users/username/bin

つぎに環境変数に、上のパスを追加します。

$ PATH=$PATH :/Users/username/bin

これで、OKです。

/User/username/binにおいてある実行権限の与えられたファイルであれば、ファイル名だけを入力すれば、実行されます。

今回の場合ならば、

$ hello.sh
Hello, world!!!

となるわけです。

今までは、実行ファイルを創っても、./を付与して相対パス指定したり、ルートからの絶対パスを指定しなければ実行できませんでした。今回の一連の設定から、パスの通したディレクトリ直下の実行ファイルであれば、名前だけを入れれば、自動的にbashがファイルを探しに行ってくれて、見つかれば実行してくれる状態になりました(^ ^)

cd やらlsやらの基本コマンドも結局のところ、何かの言語で書かれた実行ファイルがパスの通されたディレクトリに置かれているだけなんですね♪♪

やっと謎がとけた。