初阶
Linux 常见的符号:
-
:命令配置项(短形式,如-l
)--
:命令配置项(长形式,如--list
,与短形式意义一样)
对小白来说,最常见的疑惑如下:
$0
:当前脚本的名称$1
、$2.
、…:传入的第1个参数、传入的第2个参数、…$*
:传入的所有参数--
:后面紧跟参数‘...’
:里面为普通字符(特殊字符也会被失去原有意义)‘’...‘’
:除$(美元符号)、\(反斜杠)、’(单引号)、和”(双引号)之外,均认作普通字符;
:隔断不同代码块另起一行
:隔断不同代码块.
:等价于source
,点击pwd
(注意不是引号):当前路径set -e
:设置脚本只要发生错误,就终止执行fi
:fi为if语句的结束,相当于end|
:command 1 | command 2
是把第一个命令command 1
执行的结果作为command 2
的输入传给command 2
进阶
$()
和 反引号 `` :这两个命令都用作命令替换(commandsubstitution)${ }
:用来变量替换
一般情况下,$var
与${var}
并没有啥不一样。但是用${ }
会比较精确的界定变量名称的范围。[...]
:① bash 的内部命令,为test命令的另一种形式
注意:必须在左括号的右侧和右括号的左侧各加一个空格,否则会报错。(( ))
:数学比较表达式的加强版[[...]]
:① 条件判断结构(字符串表达式的加强版) ② 模式匹配-f filename
: 检测文件是否是普通文件(既不是目录,也不是设备文件),如果是,则返回 true,更多参考:linux 下shell中if的“-e,-d,-f”是什么意思Command1 && Command2
:如果Command1
命令运行成功,则继续运行Command2
命令Command1 || Command2
:如果Command1
命令运行失败,则继续运行Command2
命令exit 0
:正常运行程序并退出程序exit 1
:非正常运行导致退出程序,也可以是其他数字(不为 0 就表示程序运行出错)$#
:参数的数量