Shell 变量用双引号
来源:互联网 发布:淘宝直播推广收费 编辑:程序博客网 时间:2024/06/03 18:53
Shell 变量用双引号引起来,双引号就是表示这个双引号内为一个字符串。
对于 if 条件语句里所有的字符串的比较时,最好是在变量的外面加上双引号。特别是 if -n 判断字符串是否为null时候(null意思就是字符串长度为0),一定要加上双引号。否则,像下面的case就会出错。
a=""
if [ -n $a ] 等价于 if[ -n ]
对于字符串长度为0时,相当于没有参数,这句总返回为真。明明a的为空串,长度为空,但是却判断出来为非空字符串。
改为if [ -n "$a" ]就没有此问题,可以判断出来为此为空字符串。
对于字符串的变量,一个比较特殊的情况,就是数组变量。这个时候变量外面不能用双引号,否则的话,shell会把双引号里的内容当作一个字符串,而不会去以空格分割里面的内容。
arr="12 3 4 5"
for i in $arr
do
echo $i
done
结果:
1
2
3
4
5
arr="12 3 4 5"
for i in "$arr"
do
echo $i
done
结果:
1 2 3 4 5
所以,对于字符串的变量,一般最好是加上双引号;对于数值型的变量,可不加双引号。
- Shell 变量用双引号
- Shell 变量用双引号
- shell ,sed命令用变量替换字符串,单引号改为双引号
- linux shell 定义 变量 单引号 双引号 区别
- Linux shell 中参数变量&shell中的双引号
- linux- Shell变量命令之单引号与双引号的区别
- shell设置变量之单引号双引号的区别
- shell 判断变量是否为空,变量加不加双引号的区别
- Linux shell脚本变量单引号和双引号的区别以及变量扩展问题
- shell 单双引号
- Shell脚本中赋值变量时单引号‘和双引号“的区别
- bash编程中,变量“用双引号”和“不用双引号”的区别
- shell的扩展(解释了shell单引号,双引号,变量中包含空行,echo时换行符变成空格等)
- Linux shell: 单引号和双引号
- shell script 单引号和双引号
- linux shell单引号 双引号 解释
- Shell 单引号 双引号 反引号
- shell 中的单引号和双引号
- 多线程 之 NSThread 简单操作适合初学者
- TCP三次握手图解
- 《代码整洁之道》读书笔记2
- 黑马程序员--再次学习Java基础时的部分新收获
- 解决iphone横屏时字体变大问题最佳方法
- Shell 变量用双引号
- Jquery Ajax返回Json字符串 拼接table
- Warning: $HADOOP_HOME is deprecated.
- JAVA连接SQLServer2000数据库
- a31 tslib 移植
- 如何为旧的 WinCE 应用程序代码工程更换SDK
- POJ丑数DP题汇总2591 1338 2247 2545
- Boost函数对象 boost.bind boost.function Boost.Ref Boost.Lambda
- HDU 3886 Final Kichiku “Lanlanshu” 数位DP