我是 Shell 脚本新手。
请多多包涵。
Linux 3.0.101-108.87-默认 x86_64
我有脚本1.sh引用文件夹。我试图将所有这些路径包含在一个脚本中标头脚本然后引用标头脚本在 脚本1.sh
我现在正在做这件事
Script1.sh
setenv SCRIPT /../site/SCRIPTS
setenv TOP /../site/TOP
setenv SUB1 /../site/../.../SUB1
setenv SUB2 /../site/../.../SUB2
setenv SUB3 /../site/../.../SUB3
setenv SUB4 /../site/../.../SUB4
setenv SUB5 /../site/../.../SUB5
相反,我想做这样的事情
Script1.sh
include headerscript.sh
headerscript.sh 将会像这样
headerscript.sh
setenv SCRIPT /../site/SCRIPTS
setenv TOP /../site/TOP
setenv SUB1 /../site/../.../SUB1
setenv SUB2 /../site/../.../SUB2
setenv SUB3 /../site/../.../SUB3
setenv SUB4 /../site/../.../SUB4
setenv SUB5 /../site/../.../SUB5
这使得我可以通过包含以下内容使脚本模块化标头脚本在另一个脚本中更容易调试。
我应该做什么?
我不想将其包含在 .alias 中
答案1
要“包含”一个脚本中的另一个脚本,您应该使用.
(点运算符)或source
(取决于您的 shell)。
因此你可以使用Script1.sh
. headerscript.sh
参考:
https://unix.stackexchange.com/questions/309768/source-vs-why-different-behaviour