灯火互联
管理员
管理员
  • 注册日期2011-07-27
  • 发帖数41778
  • QQ
  • 火币41290枚
  • 粉丝1086
  • 关注100
  • 终身成就奖
  • 最爱沙发
  • 忠实会员
  • 灌水天才奖
  • 贴图大师奖
  • 原创先锋奖
  • 特殊贡献奖
  • 宣传大使奖
  • 优秀斑竹奖
  • 社区明星
阅读:2461回复:0

linux关于处理文本内容的命令

楼主#
更多 发布于:2013-03-28 08:57
最近学习了 一些处理文本内容的命令今天总结一下,以便以后复习!
 
 
 
以下命令只列出了一些常用参数.
 
 
 
uniq 命令
 
 
 
uniq 命令不加参数可以删除文件中的重复行(这些重复的行必须相邻,不相邻不能去除).
 
 
 
-c 在输出行前面加上每行在输入文件中出现的次数;
 
 
 
-d 仅显示重复行;
 
 
 
-u 仅显示没有重复过的行。
 
 
 
命令模式: uniq [参数]  文件         这个简单不举例子了!
 
 
 
sed 命令  
 
 
 
sort 命令
 
 
 
sort将文件的每一行作为一个单位,相互比较,比较原则是从首字符向后,依次按ASCII码值进行比较,最后将他们按升序输出。
 
 
 
sort 不加参数升序排列
 
 
 
-r倒序排列;  
 
 
 
-n 防止10排在2的前面;
 
 
 
-t ":" 定义分隔符为冒号;
 
 
 
-k 3 选择第三部分.
 
 
 
例子: sort -rn -t : -k 3 /etc/passwd   以":"分割passwd按照第三部分倒序排列文件中的行.
 
 
 
cut命令
 
 
 
cut命令可以从一个文本文件或者文本流中提取文本列。
 
 
 
-d  :后面接分隔字符。与 -f 一起使用;
 
-f  :依据 -d 的分隔字符将一段信息分割成为数段,用 -f 取出第几段的意思;
 
cat  /etc/passwd | cut -d ':' -f 1,3    用:分割passwd文件取出passwd文件的第一列和第三列
 
cat  /etc/passwd |cut -d ':' -f 1-3   用:分割passwd文件取出passwd文件的第一列到第三列
 
 
 
head 和 tail 命令!
 
 
 
最基本的是cat、more和less。
 
1. 如果你只想看文件的前5行,可以使用head命令,如:
 
head -5 /etc/passwd
 
2. 如果你想查看文件的后10行,可以使用tail命令,如:
 
tail -10 /etc/passwd 或 tail -n 10 /etc/passwd
 
tail -f /var/log/messages
 
参数-f使tail不停地去读最新的内容,这样有实时监视的效果 用Ctrl+c来终止!
 
3. 查看文件中间一段,你可以使用sed命令,如:
 
sed -n '5,10p' /etc/passwd
 
这样你就可以只查看文件的第5行到第10行
 
 
 
join 命令
 
 
 
join命令可以合并输出两个有相同格式的文件的内容!
 
 
 
 
 
-a1表示 显示第一个文件中不匹配的行,即为left join
 
 
 
-a2 表示 显示第二个文件中不匹配的行,即为right join
 
 
 
-o 1.1 2.1 -o是输出参数,1.1表示输出第一个文件的第一列;2.1表示输出第二个文件的第一列
 
 
 
-t "|" 是分隔符参数, 表示指定|作为域分隔符
 
 
 
-j 1.1 2.1  -j是表示连接的字段参数, 这里表示第一个文件的第一列和第二个文件的第一列关联

喜欢0 评分0
游客

返回顶部