0

私のサンプルスクリプトは次のようになります

#!/bin/bash
VAR="foo"
if [ $VAR etc etc
then etc
...

スクリプトを記述せずに$VARの値を変更してスクリプトを呼び出す方法はありますか?私は次のようなものを想像します

$ bash script.sh -v VAR="bar" (sorry for the invention)
4

1 に答える 1

3

プログラムの呼び出し用に環境変数を設定するには、スクリプトを呼び出す前に割り当てを行に追加するだけです。

VAR=bar ./script.sh

これは、スクリプトで設定された内容を上書きしないことに注意してください。そのため、スクリプト内で、デフォルト値に設定する前に、すでに設定されているかどうかを確認する必要があります。

この変数を複数の呼び出しに設定する場合は、シェルで定義し、子プロセスの環境になるようにエクスポートできます。

$ export VAR=bar
$ ./script.sh
于 2013-01-03T23:03:02.787 に答える