为什么有些目录名称中带有 $?

为什么有些目录名称中带有 $?

在此openfoam 教程页面它指示我创建目录:

mkdir -p $FOAM_RUN

ubuntu 给了我错误:

mkdir: missing operand
Try 'mkdir --help' for more information.

当我删除 $ 时,一切都按预期工作。...那么本教程是否已经过时了?

编辑:我认为问题(和答案)可能是哪里出了问题。

编辑:请参阅评论,我没有使用 bash。(我也不位于正确的目录中。)

答案1

该符号$somename代表当前值shell 变量 somename. 您可以使用以下语法设置 shell 变量:

somename=somevalue

如果你在命令行中输入上述内容,从现在起,每当你$somename在命令中使用时,它都会被替换somevalue。因此,如果你输入例如

mkdir $somename

它实际上扩展到表单mkdir somevalue,因此您将创建一个名为的目录somevalue

如果您稍后输入

somename=othervalue

那么从现在开始$somename将相当于othervalue,因此mkdir $somename将创建一个名为的目录othervalue

您可以显示全部使用命令

set

但通常会有很多输出(顺便说一下,这个命令也会显示shell 函数(如果定义了的话)。如果您只想显示您感兴趣的特定变量,请输入

echo $somename

相关内容