Bashスクリプトでコマンドライン引数を変更する方法はありますか?たとえば、Bashスクリプトは次のように呼び出されます。Bashでコマンドライン引数を変更する
./foo arg1 arg2
スクリプト内のarg1の値を変更する方法はありますか?あなたのようなものを言う
$1="chintz"
Bashスクリプトでコマンドライン引数を変更する方法はありますか?たとえば、Bashスクリプトは次のように呼び出されます。Bashでコマンドライン引数を変更する
./foo arg1 arg2
スクリプト内のarg1の値を変更する方法はありますか?あなたのようなものを言う
$1="chintz"
すべての引数をリセットする必要があります。例: $3
:
$ set -- "${@:1:2}" "new" "${@:4}"
基本的に変更したい1(S)を除いて、現在の値にsetすべて引数。
"${@:1:2}"
notationオフセット1
から出発して(したがって表記2
)は、2つの位置の引数(すなわち$1
)に拡張されます。この場合は"$1" "$2"
の省略形ですが、たとえば、 "${17}"
。
あなたは場合に、そのままスクリプトに入力を残して、(私は、input_filename = $1
とoutput_filename = $2
か何かを知らない)より意味のある変数に$1
と$2
を割り当て、その後、それらの変数(input_filename = 'chintz'
)のいずれかを上書きするほうが良いでしょうそれは他の場所で必要です。
$ 3を変更するには、$ 1と$ 2も変更する必要がありますか?そしてそれらを何に変更しますか? 「リセット」とはどういう意味ですか? – Sriram
もちろん '$ 1'と' $ 2'に。 –
+1:それはとても素敵です! – Johnsyweb