快捷操作
| 命令符 | 格式 | 作用 |
|---|
!n | | 重复执行第n条命令 |
!! | | 重复执行上一条命令 |
!字符 | | 重复执行最后一条以改字串开头的命令 |
| | [命令1]|[命令2] | 管道符,将命令1的正确输出作为命令2的操作对象 |
; | [命令1];[命令2];[命令n..] | 按顺序执行命令 |
&& | [命令1]&&[命令2] | 挡命令1成立,执行命令2,否则停止 |
|| | [命令1]||[命令2] | 当1不成立,就执行命令2,否则停止 |
##快捷键##
| 命令形式 | 作用 |
|---|
| [Tab]键 | 自动补全 |
| Ctrl+p | 等于 !! 重复上一条命令 |
| Ctrl+a | 把光标移动刀命令行开头 |
| Ctrl+e | 把光标移动到命令行结尾 |
| Ctrl+x | 回到第一个位置,按第二次回到上一个位置,互相切换 |
| Ctrl+c | 强制终止命令 |
| Ctrl+w | 删除上一个字段,空格或者tab做分割 |
| Ctrl+u | 删除或剪切光标之前的命令 |
| Ctrl+k | 删除或剪切光标之后的内容 |
| Ctrl+y | 粘贴Ctrl+U或者Ctrl+K的内容 |
| Ctrl+r | 在历史命令中搜索 |
| Ctrl+d | 退出当前终端/用户 |
| Ctrl+z | 暂停,并放入后台 |
| Ctrl+s | 暂停屏幕输出 |
| Ctrl+q | 回复屏幕输出 |
| ESC+b | 光标移动到下一个单词首 |
| ESC+f | 光标移动上一个单词首 |
| ESC+u | 光变标往下转换成大写 |
| ESC+l | 光变标往下转换成小写 |
| ESC+c | 光标所在单词第一个字母变大写 |
参考: http://blog.sina.com.cn/s/blog_7556be720100ryp2.html
通配符
| 命令形式 | 作用 |
|---|
? | 匹配一个任意字符 |
* | 匹配0个或者任意多个任意字符,任何内容 |
[] | 匹配括号中任意一个字符 |
[^] | 逻辑非,表示匹配不是种括号内的一个字符 |
'' | 单引号,在单引号中所欲的特殊符号,如$和反引号,都没有特殊含义 |
"" | 双引号,在双引号中特殊符号都没有特殊含义,除了"$"、"单引号"和"\"例外,拥有”调用变量的值”、”引用命令”和”转义符”的含义 |
反引号 | 反引号括起来的内容是系统命令,在Bash中会先执行,等于"$()" |
$() | 用来引用系统命令 |
# | 注释 |
$ | 用于调用变量的值,$[变量] |
\ | 转义符,跟在\之后的特殊符号将失去特殊含义,变为普通字符,如\$,直接是输出符号$. |
常用符号
| 命令符 | 作用 |
|---|
\\ | 输出\本身 |
\a | 输出警告音 |
\b | 退格键,向左删除 |
\c | 取消输出行末的换行符,和”-n” 选项一致 |
\e | esc键 |
\f | 换页符 |
\n | 换行符 |
\r | 回车键 |
\t | 制表符, “tab”键 |
\v | 垂直制表符 |
\nnn | 按照八进制ASCII码输出字符,其中0为数字零,nnn是三位八进制数 |
\xhh | 按照十六进制ASCII码输出字符,hh是两位十六进制数 |
运算符
| 优先等级 | 运算符 | 说明 |
|---|
| 13 | - + | 单目负,正 |
| 12 | ! ~ | 逻辑非、按位取反或补码 |
| 11 | * / % | 乘 除 取余 |
| 10 | + - | 加、减 |
| 9 | << >> | 按位左移、右移 |
| 8 | <= >= < > | 小于或等于、大于或等于、小于、大于、 |
| 7 | == != | 等于、不等于、 |
| 6 | & | 按位与 |
| 5 | ^ | 按位异或 |
| 4 | | | 按位或 |
| 3 | && | 逻辑与 |
| 2 | || | 逻辑或 |
| 1 | = += -= *= /= %= &= ^= |= <<= >>= | 赋值、运算且赋值 |
变量测试与替换公式表
| 变量置换方式 | 变量y没有设置 | 变量y为空值 | 变量y设置值 |
|---|
x=${y=新值} | x=新值 | x为空 | x=$y |
x=${y:=新值} | x=新值 | x=新值 | x=$y |
x=${y+新值} | x为空 | x=新值 | x=新值 |
x=${y:+新值} | x为空 | x为空 | x=新值 |
x=${y=新值} | x=新值 y=新值 | x为空 y=不变 | x=$y y=不变 |
x=${y:=新值} | x=新值 y=新值 | x=新值 y=新值 | x=$y y=不变 |
x=${y?新值} | 新值输出到标准错误输出 | x为空 | x=$y |
x=${y:?新值} | 新值输出到标准错误输出 | 新值输出到标准错误输出 | x=$y |