0
ユーザーが特定のディレクトリを通過するときに環境変数を作成するスクリプトを実行します。スクリプトが存在するディレクトリに切り替えるときにunixスクリプトの実行をトリガーする方法
ユーザーが特定のディレクトリを通過するときに環境変数を作成するスクリプトを実行します。スクリプトが存在するディレクトリに切り替えるときにunixスクリプトの実行をトリガーする方法
これを使用すると予想される実際の例があれば助けになりますが、ヘッドラインと質問本体に基づいて、これはどのように開始するのですか?
cat specialVarSetter.bash
#! /bin/bash
targetDir=/path/to/special/dir
cd $1
if [[ $PWD == "$targetDir" ]] ; then
userVar1=xxxx
userVar2=yyyy
fi
#your real stuff goes after this
runProgram 1
runProgram 2
chmod 755 specialVarSetter.bash
specialVarSetter.bash /path/to/special/dir
のような使用あなただけのユーザーが「DIR」を入力したい場合は、あなたがbaseDir=/path/to/special
のようなものを追加し、cd $baseDir/$1
に変更することができます。テストが実行され、変数が設定されます。
また、私はcsh/tcshがそのような機能をネイティブに持っていると思います。もしtcshがあれば、zshもそれを持っています。それはあなたのユーザー環境にどれだけのコントロールがあるかによって異なります。 (私はCDPATHのような名前のものか、それともzPの人ですか、少し助けてくれると思っています)
私はこれが役立つことを望みます。
「cd」のオーバーロードやシェルの修正が不十分な場合は、これを行うことはできません。 – pyroscope
あなたは "オーバーロード"することができますか?それは組み込みです。エイリアスを使用することはできますが、どのようにパラメータを渡すつもりですか? –