我有一个问题。使用export
命令和.
(点)命令导出变量有什么区别?请清楚解释
答案 0 :(得分:1)
这有点像苹果和橘子的问题。它们的功能不同。
export命令用于设置变量,因此您有两个选择:
variable=value
export variable=value
如果您想运行另一个shell脚本,您有几个选择:
shellScriptName.sh (no prefix or qualifiers)
/bin/sh shellScriptName
. shellScriptName.sh
变量赋值就是这样,设置一个变量。导出控制您刚刚设置的变量的可见性范围(特别是,它是否会导出到子进程)。
对于shell脚本,前两个基本相同,并在另一个进程中运行shell脚本。在这种情况下,任何设置/导出的变量都不会在调用shell中可见。当你使用。它将shell脚本作为当前shell脚本/进程中的内联源(如导入)来源,因此子shell中的变量赋值在当前shell中可见。