小编use*_*123的帖子

定义带引号和不带引号的变量有什么区别?

如果我用引号定义一个变量:

TEMP="~/Dropbox"
Run Code Online (Sandbox Code Playgroud)

然后

ls $TEMP
Run Code Online (Sandbox Code Playgroud)

不会工作,而是

echo $TEMP | ls
Run Code Online (Sandbox Code Playgroud)

作品。

为了获得相同的结果,我还可以定义不带引号的变量,例如:

TEMP=~/Dropbox
Run Code Online (Sandbox Code Playgroud)

这样做我可以简单地输入

ls $TEMP
Run Code Online (Sandbox Code Playgroud)

我对它们之间的区别感到很困惑,我想知道我应该在何时何地分别使用这两种定义?

bash quoting variable assignment tilde

3
推荐指数
1
解决办法
1231
查看次数

标签 统计

assignment ×1

bash ×1

quoting ×1

tilde ×1

variable ×1