我有一个设置各种变量的脚本。
maxMemSize=8g
poolThreadCount=4
...
我必须在多个系统上执行此脚本,所有这些脚本都运行CentOS。现在需要的是限制某些系统上某些变量的设置。例如,在system1上,不应设置maxMemSize
,而在系统2设置poolThreadCount
时应设置限制。
就像我们设置readonly
环境变量以限制export
这些特定变量的方式一样,我们是否可以采用类似的技巧来限制在bash脚本中设置特定变量?
答案 0 :(得分:0)
要限制变量重新定义,您可以在~/.bashrc
或任何其他文件中将其设置为只读,让我们说~/.readonly
:
readonly maxMemSize=3g
readonly poolThreadCount=2
现在你需要告诉你bash哪个init文件在开始执行之前应该运行。这由环境变量$BASH_ENV
定义:
export BASH_ENV=~/.bashrc
或
export BASH_ENV=~/.readonly
现在在bash
bash initThreadRead.sh