在命令行的bash脚本中覆盖变量

前端之家收集整理的这篇文章主要介绍了在命令行的bash脚本中覆盖变量前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
如何从命令行覆盖bash脚本中的变量?我知道如何传递变量,但我只是想要像./myscript.sh -Dvar = val这样的东西
您需要对要覆盖的变量使用参数扩展:
$ 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

猜你在找的Bash相关文章