1 帮助文档语法
[ ]:可选项
...:列表可以跟多个选项或参数
大写字母:必选项
a|b|c:多选一
2 特殊符号
!
:取反,可用在命令前参数前
查找当前目录下,名称不是f开头的文件
find ./ ! -name f*
;
:在一个命令后执行另一个命令
>
,>>
:标准输出重定向
2>
,2>>
:错误输出重定向
$>
,$>>
:标准、错误同时重定向
<
:重定向输入
wc -l < f1.txt
<<
:重定向追加输入,配合EOF使用
fdisk /dev/sdb <<EOF .....................EOF
\
:
- 在命令前表示强制执行,不用交互。用法
\cmd
- 如果命令被设置了别名,表示直接执行命令,忽略别名
&&
: 第一个命令执行成功后,执行第二个命令。用法 cmd1 && cmd2
||
: 第一个命令执行失败后,执行第二个命令。用法 cmd1 || cmd2
``
:将引号中命令执行结果交给外面的命令处理
$()
:等同于``
$((数学运算))
:将数学运算的结果交给外面的命令处理
[root@node1 ~]$ echo $((3+1))
4
$[数学运算]
:等同于$((数学运算))
$?
:上一个命令的返回值,0代表成功,非0不成功
序列符号
echo、touch、mkdir可以识别
{begin..end..increment}
:有序序列,步长不写默认是1
[root@node1 ~]$ echo {1..5}
1 2 3 4 5
[root@node1 ~]$ echo {1..5..3}
1 4
[root@node1 ~]$ echo {a..z}
a b c d e f g h i j k l m n o p q r s t u v w x y z
{x,y,z}
无序序列
[root@node1 ~]$ mkdir a{1,3,z}
[root@node1 ~]$ ll
drwxr-xr-x 2 root root 6 Dec 5 12:15 a1
drwxr-xr-x 2 root root 6 Dec 5 12:15 a3
drwxr-xr-x 2 root root 6 Dec 5 12:15 az
{,bak}
特殊的无序序列,常用来备份文件
[root@node1 ~]$ cp f1{,.bak}
[root@node1 ~]$ ll
-rw-r--r-- 1 root root 0 Dec 6 18:47 f1
-rw-r--r-- 1 root root 0 Dec 6 18:47 f1.bak
运算符号
++
:
- i++ 等同于先做i=i+1,再输出i
- ++i 等同于先输出i,再做i=i+1
3 正则表达式
基础
.
匹配除回车外的任意字符
\t
tab
\s
匹配任何空白字符,包括空格、制表符、换页符等等。
\b
匹配单词边界
\<\>
匹配单词边界
[abc]
匹配a或b或c
[a-z]
[a-zA-Z0-9]
[a-Z]
[^abc]
排除a、b、c
扩展
{n,m}
指定前面字符最少连续出现n次,最多连续出现m次
{n}
指定前面字符连续出现n次
{n,}
最少出现n次
{,m}
最多出现m次
网友评论