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


linux关于处理文本内容的命令
 
最近学习了 一些处理文本内容的命令今天总结一下,以便以后复习! 
 
以下命令只列出了一些常用参数.
 
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是表示连接的字段参数, 这里表示第一个文件的第一列和第二个文件的第一列关联 
 

相关内容

    暂无相关文章