4
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

自作シェルスクリプトのパスを記載せずに実行したい。

Posted at

最近、業務中の作業コストをさげるためにLinuxでシェルスクリプトを作成することが増えてきました。
スクリプト作成時当初はスクリプトをたたくだけ喜んでいましたが、慣れてくると、毎回スクリプトを実行するためのパスを記載するのが面倒になりつつあります。
今回はパスを記載せず、スクリプトを実行するためにしたこといくつか記載します。

環境はCentOS7.9です。

まず、以下ファイルを用意しました。

/root/cmd/hoge.sh 
echo "hoge"

方法1 .bash_profile 内のexportにパスを追記する。



vim  .bash_profile
export PATH=$HOME/cmd:$PATH

hoge.shを実行する。

hoge.sh
hoge

方法2 /usr/local/bin 以下にシンボリックリンクを追加する。

ln -s ~/cmd/hoge.sh /usr/local/bin/hoge2

hogeを実行する。

hoge2
hoge

いずれも上記の方法はファイルが環境変数$PATH内にパスがあれば、
CUI内でコマンドを探して実行してくれるというルールの上で成り立っているらしいです。
ちなみに 
/bin/はシングルモード用(OSが壊れてときとか)
/usr/bin/はシングルモードではないかつ、RPM等のパッケージに入っているコマンド等が収納
/usr/local/binは自作スクリプトなどを置くディレクトリ
なので今は自作スクリプトを主に方法2の方法で採用しています。

4
1
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?