1、grep:是行过滤工具,用于根据关键字进行过滤
语法:grep [选项] ‘关键字’ 文件名
grep --color=auto 'root' /etc/passwd
选项参数:-i:不区分大小写
-v:查询不包含指定内容的行
-n:显示行号
-A:显示匹配行及后面多少行(after)
-B:显示匹配行及前面多少行(before)
-C:显示匹配行前后多少行
-w:按单词搜索
-o:只打印匹配到的关键字
-c:统计匹配到的次数
^key:以某个关键字开头
key$:以某个关键字结尾
^$:匹配空行
更改命令别名:
临时修改:alias grep=‘grep --color=auto’
永久生效:进入/etc/bashrc 按Shift+G到最后一行然后按小o在最后一行下面添加alise grep=‘grep --color=auto’
为了让其他用户别名也生效需要source /etc/bashrc
2、cut工具:是列截取工具,用于列的截取
语法:cut 选项 文件名
常见选项:
-c:以字符为单位进行分割截取
-d:自定义分隔符,默认为制表符(Tab键)
-f:与-d一起使用,指定截取哪个区域
示例:cut -d ':' -f1 /etc/passwd 截取第一个冒号前面的内容 f2就是第二列
cut -d ':' -f1,7 /etc/passwd 截取第一列和第七列
3、sort工具:用于排序,按升序排列
语法和选项:
-u:去除重复行
-r:降序排列,默认是升序
-o:将排序结果输出到文件中,类似重定向符号>
-n:以数字排序,默认是按字符排序
-t:分隔符
-k:第N列
-R:随机排序,每次运行的结果不同
4、uniq工具:去除连续的重复行
选项:
-i:忽略大小写
-c:统计重复行的次数
-d:只显示重复的行
5、tee工具:屏幕输出和文件输入同时生效(默认覆盖)
选项:-a:追加
6、diff工具:用于逐行比较文件的不同
文件1如何改变才能和文件2匹配
语法:diff 选项 文件1 文件2
选项:
-b:不检查空格
-B:不检查空白行
-i:不检查大小写
-w:忽略所有的空格
--normal:正常格式显示(默认)
-c:上下文格式显示
-u:合并格式显示
比较文件夹内文件是否一样需要加-q
通过打补丁方式让file1和file2文件内容一致
1、diff -u file1 file2 > file.patch 找出文件不同,然后输出到file.patch
2、patch file1 file.patch 将两个文件不同的地方到补丁只file1中使file1和file2相同
3.diff file1 file2 测试验证
7、paste工具:用于合并文件行
选项:
-d:自定义分隔符,默认制表符
-s:串行处理,非并行
8、tr工具:用于字符转换、替换、删除,主要用于删除文件中控制字符或进行字符转换
语法和选项:
-d 删除字符串中所有符合要求的字符
-s 删除所有重复出现的字符,只保留一个,即将重复出现字符串压缩为一个字符串
tr '0-9' '$' < /etc/passwd 将文件输出给tr处理并将数字全部改为$,但原文件不变
tr -d ‘a-d’ < /etc/passwd 将文件输出给tr处理删除所有小写字母