且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

覆盖变量从命令行bash脚本

更新时间:2023-10-06 13:21:16

您需要使用参数扩展为变量(S)要覆盖:

You need to use parameter expansion for the variable(s) you want to override:

$ cat override.sh
#!/bin/bash

: ${var1:=foo} # var1 will take on the value "foo" if not overridden
var2=${var2:-foo} # same thing but more typing

echo "var1 is $var1 | var2 is $var2"

无覆盖值

$ ./override.sh
var1 is foo | var2 is foo

随着覆盖值

$ var1=bar var2=baz ./override.sh
var1 is bar | var2 is baz