微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

linux – 何时在shell变量周围包装引号?

有人能告诉我是否应该在shell脚本中包含变量的引号?

例如,以下是正确的:

xdg-open $URL 
[ $? -eq 2 ]

要么

xdg-open "$URL"
[ "$?" -eq "2" ]

如果是这样,为什么?

解决方法:

一般规则:如果它可以为空或包含空格(或任何空格)或特殊字符(通配符),则引用它.不引用带空格的字符串通常会导致shell将单个参数分解为多个.

$?不需要引号,因为它是一个数值. $URL是否需要它取决于你在那里允许的内容以及是否仍然需要参数(如果它是空的).

我倾向于总是出于习惯而引用字符串,因为它更安全.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐