Shell语法
Shell 中引用符号的名称及意义
在 Shell 中引号分为 2 种:单引号、双引号。
( 1 )双引号
由双引号括起来的字符,除 $ 、倒引号和反斜线( \ )仍保留其特殊功能外,其余字符通常作为普通字符对待。
( 2 )单引号
由单引号括起来的字符都作为普通字符出现。
(3) 反引号
它的作用是命令替换,将其中的字符串当成shell命令执行,返回命令的执行结果,反引号包括的字符串必须是能执行的命令,否则会出错。
符号$( )的作用和反引号的一样,都是命令替换
符号 |
名称 |
意义 |
“ ” |
双引号 |
引用处美元符号($)、反引号(`)、和反斜线(\)之外的所有符号 |
‘ ’ |
单引号 |
引用所有符号 |
` ` |
反引号 |
Shell将反引号中的内容解释为系统命令 |
\ |
反斜线 |
转义符,屏蔽下一个字符的特殊意义 |
Shell中的特殊字符及其意义
特殊符号 |
意义 |
& |
传递到脚本的参数数量 |
* |
0个或多个在*字符之间的那个普通字符起 |
+ |
匹配1个或多个在其以前的那个普通字符3 |
^ |
匹配行首,或后面字符的非 |
$ |
命令的退出状态,0代表正确,1代表错误 |
` |
反引号,Shell的引用符号 |
“” |
双引号,Shell的引用符号 |
| |
管道符号或表示“或”的意思 |
? |
匹配0个或1个在其以前的那个普通字符 |
\ |
转义符 |
字符串判断
str1 = str2 当两个串有相同内容、长度时为真
str1 != str2 当串str1和str2不等时为真
-n str1 当串的长度大于0时为真(串非空)
-z str1 当串的长度为0时为真(空串)
str1 当串str1为非空时为真
数字的判断
int1 -eq int2 两数相等为真
int1 -ne int2 两数不等为真
int1 -gt int2 int1大于int2为真
int1 -ge int2 int1大于等于int2为真
int1 -lt int2 int1小于int2为真
int1 -le int2 int1小于等于int2为真
逻辑判断
-a 与
-o 或
! 非
特殊字符