本文共 558 字,大约阅读时间需要 1 分钟。
test 是个字符串,而回车符是一个不可见的特殊字符,只有在双引号中才有其本来的含义。不在双引号中,类似的特殊字符都将被shell 解释为空格,制表符 \t 也是一样,而在单引号中 $ 的变量替换功能被关闭。
[root@master shell_learning]# seq 1 512345[root@master shell_learning]# test=$(seq 1 5)[root@master shell_learning]# echo $test1 2 3 4 5[root@master shell_learning]# echo "$test"12345[root@master shell_learning]# echo '$test'$test
如果 test 恰好是一个目录,在 test 不为空的情况下,cd $test 和 cd "$test" 执行结果是一样的。但是一旦 test 为空,则执行结果就截然不同了。
[root@master shell_learning]# echo $test[root@master shell_learning]# cd "$test"[root@master shell_learning]# cd $test[root@master ~]#
转载地址:http://qjjqi.baihongyu.com/