Q
猛砸可变格式
3
A
回答
7
有$var
和${var}
,并有不同之处在于"$var"
和"${var}"
没有什么区别,在某些情况下,解析器可能无法识别您的意图,当你的用户以前的版本没有什么区别。试想一下:
foo=hello
echo "$fooworld"
echo "${foo}world"
第一echo
打印什么,因为变量fooworld
没有定义。第二个打印helloworld
,因为shell能够确定您引用foo
变量。
$var
和"$var"
之间的区别在于,扩展之后,shell对未加引号的变量扩展进行评估。作为这样:
var='ls /'
$var
解释/
,由于膨胀后的壳的计算结果的空间作为令牌分离器,而在ls /: No such file or directory
var='ls /'
"$var"
结果,因为没有名为ls /
命令是在用户的环境中使用。
2
引号中的那些被扩展为一个参数,而不是分成单独的单词。
如果下一个字符可能是变量名的一部分,则${var}
表示法很有用,例如:"${var}name"
。
function args() {
while [ $# -gt 0 ]; do echo "arg: '$1'"; shift; done
}
# var=" a b c"
# args $var
arg: 'a'
arg: 'b'
arg: 'c'
# args "$var"
arg: ' a b c'
相关问题
- 1. 猛砸更正格式化
- 2. 猛砸日期格式
- 3. 格局猛砸
- 4. 猛砸字符串格式化/替换
- 5. 猛砸字符串格式化
- 6. 猛砸格式文本文件导入
- 7. 猛砸串用空格
- 8. 猛砸,检验变量
- 9. 以exec猛砸组变量
- 10. 猛砸变量命令
- 11. 猛砸变量赋值
- 12. 猛砸与其他变量
- 13. 猛砸一个变量
- 14. 可装载猛砸内建
- 15. 猛砸功能
- 16. 得到猛砸
- 17. 猛砸为NULL
- 18. 猛砸与管
- 19. 在猛砸
- 20. 猛砸描述
- 21. 猛砸串
- 22. 在猛砸
- 23. 在猛砸
- 24. 猛砸从线
- 25. 从猛砸
- 26. 从猛砸
- 27. 猛砸忽略$
- 28. 遍历猛砸
- 29. 读线,猛砸
- 30. 猛砸时间格式HH:MM 12小时格式AM/PM
感谢您的解释。 – E1Suave