1

環境変数の.bashrc先頭に簡単に追加できるように、関数を追加しようとしています。$PWD関数が 1 つの引数、つまり作業ディレクトリを先頭に追加する変数の名前を取るようにしたいと考えています。なんかこんなこと考えてる…

function prependTo{ export $1=$PWD:\$$1 }

私がやろうとしていることはbashで可能ですか?

4

1 に答える 1

3

キーワードは使用しないでくださいfunction。廃止され、非 POSIX です。代わりにこれを行います:

 prependTo(){ export $1=$PWD:${!1}; }

説明

からman bash

パラメータの最初の文字が感嘆符である場合、可変間接性のレベルが導入されます。Bash は、パラメーターの残りの部分から形成された変数の値を変数の名前として使用します。この変数は展開され、その値はパラメーター自体の値ではなく、残りの置換で使用されます。これは間接展開として知られています。

于 2011-03-04T19:33:36.717 に答える