たくさんのスクリプトを含むフォルダーがあります。フォルダが~/scripts
のようなことをしなくても、ディレクトリでこれらのスクリプトを簡単に実行できる方法はあり~/scripts/file1.sh
ますか? スクリプトを に入れようとしました/bin/
が、それでもやらなければなりませんfile1.sh
。これらのスクリプトを、拡張子 (つまり、file1
) なしで名前だけで参照できる方法はありますか?
ありがとう。
~/scripts
.profile、.bashrc、またはコマンドライン自体のいずれかで、PATH 環境変数に追加します。次のコマンドを使用して、PATH 環境変数を変更します。
export PATH=$PATH:~/scripts
それが完了したら、コマンドを使用してスクリプトに実行権限があることを確認してchmod +x file
から、次を実行できます。
file1.sh
file2.sh
つまり、これらのスクリプトの実際のパスをプレフィックスとして付けません。
多数のスクリプトを実行する場合は最適なソリューションではありませんが、最も頻繁に使用するスクリプトのエイリアスを作成できます。また、文書化の目的で拡張子を付けてシェルスクリプトに名前を付けてい.sh
ます(つまり、実行中に見つけやすいls
)。
このように、エイリアスは .sh 拡張子のないスクリプトの名前ですが、自分の~/bin
ディレクトリを直接参照してスクリプトを呼び出します。
この OS の優れた点の 1 つは、タスクを達成するための方法が常にたくさんあることです。ツールボックスに複数の方法を用意しておくと、いずれ 1 つの方法がうまくいかない場合に備えて問題はありません。