bashを使用してcdなしでファイルでドットスラッシュ(./)エイリアスを実行する

bashを使用してcdなしでファイルでドットスラッシュ(./)エイリアスを実行する

次のディレクトリがあります。

/home/user/Project/

Projectninja多くのサブディレクトリ内とその背後に./ninja

/home/user/Project/sub1/sub2/sub3/ninja

もちろん、cdジャンプするProjectこともできました./ninja。しかし、bashrcを介してコマンドを実行するためのエイリアスを作成しています。

alias runNinja = cd ~/Project/sub1/sub2/sub3 && ./ninja

1つのコマンドでできますか?

alias runNinja = .~/Project/sub1/sub2/sub3/ninja

上記は明らかに機能しません。

alias runNinja = ./home/user/Project/sub1/sub2/sub3/ninja

TL、DR:ディレクトリでスクリプトを実行するためのエイリアスを減らす方法は?

ベストアンサー1

ただ追加.bashrc の $PATH 変数パスは次のとおりです。

export PATH=$PATH:/home/user/Project/sub1/sub2/sub3

./ なしで好きなところどこでも実行できます。

$ ninja

しかし、もちろんエイリアスを設定することもできます。

alias runNinja='/home/user/Project/sub1/sub2/sub3/ninja'

どこでも実行できます。

$ runNinja

意図的に実行時にそのディレクトリに移動する場合(たとえば、そのディレクトリのファイルまたは依存関係を入力/出力として処理する場合)、〜/ .bashrcファイルまたは構成ファイルに以下の関数を作成する必要があります。 :

runNinja() { cd /home/user/Project/sub1/sub2/sub3 && ./ninja "$@" }

おすすめ記事