grep是行的过滤工具,主要是截取行
grep --color=auto 'root' passwd //
alias grep='grep --color=auto' //别名定义显示颜色
vim /etc/bashrc //修改配置文件让每次输入grep都是可以显示颜色
source /etc/bashrc //让配置立即生效

grep -n 'root' passwd //-n:显示行号
grep -ni 'root' passwd //-i:不区分大小写
grep '^root' passwd //^:以什么开头
grep 'root$' passwd //以什么结尾
grep -niv '^root' passwd //过滤出 -v(取反)不以root开头的文件
grep -nB 3 '^ftp' passwd //过滤以ftp开头的前3行(包括本身)
grep -nA 3 '^ftp' passwd //过滤ftp开头的后三行(包括本身)
grep -nC 3 '^ftp' passwd //过滤以ftp开头的前后三行(包括本身)
-w:按单词搜索 -o:打印匹配的关键字

cut是列的过滤工具,主要是截取列
cut -d: -f1 passwd //以:为分隔符截取passwd的第一列

cut -d: -f1,7 passwd |head //管道命令过滤passwd的前10行,然后截取第一列和第七列

cut -c1-5 passwd //以1到5个字符过滤 -c10-:每一行的第10个字符开始截取

sort工具(排序)
sort -n -t: -k3 1.txt //按第三列的uid升序截取1.txt
sort -nr -t: -k3 1.txt //-r:降序排列
>:=1> :标准输出重定向 2是错误输出
-o:标准输出重定向
-u:去重



uniq工具:只去除连续的重复行
uniq 文件名
-c:显示重复行的次数
-d:只显示重复行


tee工具:输出屏幕输入覆盖
-a:追加


diff工具:对比两个文件的区别
>file:清空内容
paste工具:合并两个文件内容行
paste file1 file2 //合并两个文件内容行(第一个文件和第二个文件的每行都会按顺序合并)


tr工具:替换显示文件内容
tr '0-9' '@'<filename //0-9表示所有的数字 【a-zA-Z0-9】表示所有数字和字母
tr -d '[:/]' <filename //删除:和/
cat filename |tr '[:/]' //删除:和/
tr 'a-z' 'A-Z' <filename //把小写字母替换成大写

常用的通配符:
*:0个或多个任意字符
?:匹配任意单个字符
[]:匹配任意单个字符或者一组字符
{}:匹配字符串或{1..9}匹配1到的文件

bash中的引号:
" ":把引号内容看成整体,可以和$使用
'':把引号内容看成整体,禁止和变量使用
反撇号``:和$()一样,引号和括号里面的内容会优先执行,但是不支持嵌套
