前言
Shell编程中,不仅会是使用变量,还经常会使用$
、\
、单引号、双引号、反引号等符号。
这些符号在使用中,有时候难免混乱,所以整理此文,便于学习,希望对你有用
文章目录
一. 符号的介绍与对比
如下为几种符号简单区别对比:
- 美元符号
$
,主要用于引用变量值,例如定义变量MXS=moxiaosheng
,引用时,需要用$MXS
; \
反斜杠,主要是用于对特定的字符实现转义,保留原有意义,例如echo “\$MXS”
结果会打印$MXS
,而不会打印moxiaosheng
;- 单引号
' '
,单引号又称为强引,不具有变量置换的功能,所有的任意字符还原为字面意义,实现屏蔽Shell元字符的功能; - 双引号
" "
,双引号又称为弱引,具有变量置换的功能,保留$(使用变量前导符)
,\(转义符)
, `(反向引号)元字符的功能; - 反向引号``,反引号,位于键盘Tab键上面一行的键,用作命令替换(相当于$(…))。
二. 单引号和双引号的区别
在shell中,单引号(')和双引号(")在处理字符串时有以下区别:
2.1. 变量展开:
- 单引号字符串中的变量不会被展开,将原样输出。例如,echo ‘Hello $name’ 输出结果为 “Hello $name”。
- 双引号字符串中的变量会被展开为其对应的值。例如,echo “Hello $name”,如果变量 name 的值为 “Alice”,则输出结果为 “Hello Alice”。
#!/bin/bash
name="Alice"
# 单