LoginSignup
0
0

More than 5 years have passed since last update.

あるディレクトリに存在するシェルスクリプト全てにエイリアスを張る

Posted at

はじめに

この記事では、あるディレクトリに格納されたシェルスクリプト全てに対してエイリアスを張るスクリプトを示します。

このスクリプトを読み込むことで、あるディレクトリに存在するシェルスクリプト(例えば"$HOME/.mylib/sh/my_exec.sh")を、my_execで実行できるようになります。

スクリプト

前提条件として、MY_SH_DIRにはエイリアスを張りたいshファイルのみ存在するものとします。
拡張子で判別したいとかがある場合はif文を書いてください。

また、.bash_aliasに書いてますが.bashrcとかにべた書きでも構いません。

.bash_alias

# MY_SH_DIR下のshにエイリアスを張る

MY_SH_DIR=$HOME/.mylib/sh # 任意に変更すること

for filename in $( ls $MY_SH_DIR ); do
  # 実行権限付与 やらなくてもいいし、細かく設定したいなら任意に設定のこと
  chmod +x "${MYLIB_SH_DIR}/${filename}"

  # 最長除外でリンクを貼る "a.sh"も、"a.sh.old"も"a"で張りに行く
  # 最短除外にする場合は {filename%%.*} を ${filename%.*} とする
  alias "${filename%%.*}"="${MYLIB_SH_DIR}/${filename}"
done

.bash_aliasを新しく作成した場合は、.bashrcにtest -r ~/.bash_alias && source ~/.bash_aliasを追加してください。

参考文献

0
0
0

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
0
0