1、双引号:
双引号内的内容除了$,转义符/,倒引号`这三个保留特殊功能,其他的均作为普通字符。
2、单引号:
单引号里的内容全部作为普通字符。
3、倒引号:
引号内的内容当做shell命令行来解释。
4、美元符$:
变量符,如$a表示变量a的值。变量字符长度超过1个时,用{}括起来。
5、变量:
本地变量:只能在创建它们的shell中使用。
变量的声明及赋值:变量=值。
变量的引用:$变量名,${变量名}。
只读变量:readonly 变量名。
清除变量:unset 变量名。
环境变量:可以在创建它们的的shell及其派生出来的子shell中使用。均为大写。
环境变量可在命令行中用export设置,但用户注销后会失效。
让环境变量在推出shell重新登录后仍然有效需要在相关配置文件中修改:
内部变量:由系统提供,用户不能修改它们。
$0(当前shell名称),$#(参数个数),$?(shell返回值),$*,$@(全部参数),$n(第n个参数),$$(进程pid),$!(上一个shell的pid)。
二、
1、test:test n1 –参数 n2
Test中:-a(与),-o(或),!(逻辑非)
2、测试文件:
3、测试字符串:
4、流程控制:
Seq 1 10:产生1到10的数字。
Expr 1 + 2:求职,数字和运算符中要加空格。出现在语句中要加反引号。
If分支:
Case语句:
For语句:
While语句:
重定向:
2>&1表示将标准错误重定向到标准输出。
>/dev/null表示又将标准输出重定向到空。
字符匹配:
&&,||:
Ls /tmp && cat aa:第一个操作(ls /tmp)成功时才会执行cat aa操作。
Ls /tmp || cat aa:第一个操作(ls /tmp)失败时才会执行cat aa操作。