unit2.6 文本处理工具
来源:互联网 发布:管易软件 编辑:程序博客网 时间:2024/05/18 00:43
########################unit2.6#####################################
文本处理工具
¥¥¥¥¥¥一.diff比较两个文件的不同
1,diff命令
diff -u file file.new >file.path ##生成补丁文件
yum install patch -y ##安装打补丁工具
(配置yum仓库,以及ip)
(如图一)
patch -b file file.path ##给老软件打补丁,并且对老软件进行备份(如图二)
2,修补命令 patch
**patch 采用补丁文件 patchfile ( 包含由 diff 生成的差异列表 ) 并将这
些差异应用于生成补丁版的一个或多个原始文件。通常 , 补丁版替换原
始文件 , 但当指定 -b 选项时 , 可以制作备份。将用 .orig 文件名后缀
重命名原始文件。
**patch 可用于将简单的补丁文件应用于使用以下语法的单个文件
– [root@host etc]# patch issue patchfile
Patching file issue
**以下命令显示如何使用通过 diff -Naur 创建的补丁文件。用户更改为
与从中创建补丁文件的原始目录相似的可比较目录后 , 将执行 patch
– [user@host orig-dir]$ patch -b < /tmp/patchfile
Patching file hosts
Patching file network
¥¥¥¥¥¥二,grep(过滤字符)
grep:将显示文件中与模式匹配的行。也可以处理标准输入。
-i ##忽略大小写
(如图三)
-n ##显示结果所在行的行号
(如图七)
-c ##结果个数
-v ##反向过滤
(如图四)
-r 关键字 目录 ##对文件执行递归式搜索,从命名目录开始(在目录中过滤还有关键字的文件)
(如图八)
-E "关键字1|关键字2|....." ##过滤多个关键字
(如图五,六)
****特殊实例;
(如图十一,十二)
¥¥¥¥¥¥三,sort(排序)
-n ##纯数字
(如图十三)
-r ##倒序
如图十五
-u ##去掉重复行
如图十六
-t ##指定分隔符
-k ##指定排序的列
如图十四
***特殊实例:
(如图二十,二十一)
¥¥¥¥¥¥四,uniq(处理重复行)
-c ##统计重复行的个数
(如图十七)
-u ##显示唯一的行
(如图十八)
-d ##显示重复行
(如图十九)
¥¥¥¥¥¥五,tr(转换字符大小写)
tr 'a-z' 'A-Z' <file ##把file中所有小写字符转换成大写
(如图二十二,二十三)
¥¥¥¥¥¥六,sed :控制流输出(非交互式更改文件的内容-i)
sed 命令是流编辑器 , 用于对文本数据流执行编辑。假定要处理一个文件名 , sed 将对文件中的所有行执行搜索和替换 , 以将修改后的数据发送到标准输出 ; 即 , 其实际上并不修改现有文件。与 grep 一样 , sed通常在管道中使用。
实例:
sed 's/nologin/westos/g' passwd ##替换输出中的nologin为westos(修改shell中,不改变现有文件的内容)
(如图二十五)
sed 's/nologin/westos/g' -i passwd ##替换输出中的nologin为westps(修改现有文件中的内容)
(如图二十六,二十四)
sed '1,5s/nologin/westos/g' passwd ##替换输出中1-5行的nologin为wesots
(如图二十七)
sed '/games/,/nobody/s/nologin/westos/g' passwd ##替换输出中的games字符到nobody字符之间的nologin为westos
(如图二十九)
sed -e 's/nologin/westos/g' -e 's/sbin/lee/g' passwd ##多条替换策略用-e连接
(如图二十八)
sed 3d passwd ##不显示文件中的第三行
(如图三十)
sed 3,7d file ##不显示文件中的3-7行
sed 3,7p file ##重复显示文件中的3-7行
sed -n 3,7p file ##只显示文件中的3-7行
(如图三十一)
[root@westos mnt]# cat rule ##规则文件内容
s/nologin/westos/g
s/sbin/lee/g
(如图三十二)
[root@westos mnt]# sed -f rule file ##使用规则文件更改输出
1 root:x:0:0:root:/root:/bin/bash
2 bin:x:1:1:bin:/bin:/lee/westos
3 daemon:x:2:2:daemon:/lee:/lee/westos
4 adm:x:3:4:adm:/var/adm:/lee/westos
(如图三十三)
¥¥¥¥¥¥七,Cut 命令
• cut 用于 “ 剪切 ” 文件中的文本字段或列,并将其显示到标准输出。
cut -d ##指定用于提取字段的分隔符(Tab是默认值)
-f ##指定要从每行中提取的Cut 命令
(如图九)
• cut 用于 “ 剪切 ” 文件中的文本字段或列并将
其显示到标准输出字段
-c ##指定要从每行中提取
(如图十)
- unit2.6 文本处理工具
- 6文本处理工具
- linux基础2-6文本处理工具
- 文本处理工具
- Linux 文本处理工具
- 文本处理工具
- Linux 文本处理工具
- 文本处理工具
- linux文本处理工具
- Linux文本处理工具
- shell-文本处理工具
- 文本处理工具
- 文本处理工具
- 文本处理工具
- 文本处理工具
- 文本处理工具
- 文本处理工具
- 文本处理工具
- SpinControl
- mysql复合索引注意事项
- 静态方法中实现对非静态方法的调用的讨论
- JQuery的AJAX局部刷新使用操作
- mysql存储过程小例子
- unit2.6 文本处理工具
- 模拟实现strlen与strcpy函数
- 第一个只出现一次的字符
- 运维学习24
- C语言执行shellcode的五种方法
- 二分贪心—U
- 网络编程中TCP/UDP区别
- Spring MVC
- 逻辑斯蒂回归(对数几率回归)