一、sort

Usage: sort [OPTION]... [FILE]...
-o 输出文件
-d 按字典顺序排序
-n 按数据大小输出
-r 按逆序输出排序结果
-k 指定分类是域上的数字分类
-t 域分隔符,用非空格或tab分隔域

sort -k3 -n -r -t: /etc/passwd
sort -d /etc/passwd

二、WC

Usage: wc [OPTION]... [FILE]...
-c 字符数量~
-l 行数~
-w 统计单词数量~
wc /etc/passwd
36   65 1739/etc/passwd #36行,65个单词(空格区分),1739个字符

三、diff

diff
Usage: diff [OPTION]... FILES
Compare files line by line.
-q 显示有无差异,不显示详细的信息~
-c 显示全部内文,并标出不同之处~
-b 不检查空格字符的不同~
-B 不检查空白行
-r 比较子目录中的文件~
diff /etc/passwd./passwd.bak  
2d1
< bin:x:1:1:bin:/bin:/sbin/nologin

四、grep
Usage: grep [OPTION]... PATTERN [FILE] ...
Search for PATTERN in each FILE or standard input.
-c 只打印匹配的行编号数
-i 匹配文本时忽略大小写
-n 在每行前显示其行编号
-v 逆向输出,打印不匹配的行
-f file 要匹配的字符在文件列表中
cat /etc/passwd |grep -n root
1:root:x:0:0:root:/root:/bin/bash
12:operator:x:11:0:operator:/root:/sbin/nologin
#grep '[Tt]his' file.txt
#grep '^[^#]' file.txt
匹配任意字符
grep 'r..t' /etc/passwd
root:x:0:0:root:/root:/bin/bash
operator:x:11:0:operator:/root:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin

五、sed

sed
Usage: sed [OPTION]... {script-only-if-no-other-script}[input-file]...
S 替代操作
i 插入命令
a 附加命令
d 删除全部匹配行
D 删除首次匹配的行

#sed -n '1,4p' /etc/passwd打印1~4行,-n --quiet以免先打印出passwd的全部内容
#sed '/80/D' file.txt
#sed 's/var/usr/g' file.txt 替换file.txt中全部var为usr
#sed '50,$s/help/man/g' file.txt 从50~最后行替换help为man
sed '/done/d' xj_user_p.log 删除done

六、awk

Usage: awk [POSIX or GNU style options] -f progfile [--] file...
Usage: awk [POSIX or GNU style options] [--] 'program' file...
       gawk '{ sum += $1 }; END { print sum }' file
       gawk -F: '{ print $1 }' /etc/passwd
NF 当前记录中的字段数。NR 当前记录数。

awk -F: '{print NR,$1,$NF}' ./passwd.bak
awk -F: 'NR==5{print NR,$0}' ./passwd.bak 打印出5,15,25...行
5 sync:x:5:0:sync:/sbin:/bin/sync
15 nobody:x:99:99:Nobody:/:/sbin/nologin
25 apache:x:48:48:Apache:/var/www:/sbin/nologin

七、uniq

如果要在文件中查找重复的行,uniq命令会很有用,该命令一般格式为:uniq in_fileout_file

该格式中,uniq把in_file复制到out_file,处理过程中,去掉其中的重复行,uniq对重复行的定义是完全匹配的连续行。如果不指定out_file,结果就写入标准输出。
-d选项:它告诉uniq把文件中的重复行写入out_file,不管它们在文件中连续出现多少次,这样的连续行只写一次
-c选项:带-c选项后,每行最前面显示该行在输入文件中出现的次数。

$ more test.txt
aaa
ccc
ccc
ccc
ddd
bbb
eee
123
$ uniq test.txt
aaa
ccc
ddd
bbb
eee
123
$ uniq -d test.txt
ccc
$ uniq -c test.txt
    1 aaa
    3 ccc
    1 ddd
    1 bbb
    1 eee
    1 123
$

综合示例:

...
数据处理:
找出上海股票涨幅最大的股票?
sort -n -r -k4 t.txt | sed -n '1p'
涨幅>3的股票?
awk '{if ($1>3) print $0} ' t.txt
涨幅在在4~15之间的股票
awk'{if($4>0&&$4<15){print$0}}' t.txt

转自:http://hi.baidu.com/��������/blog/item/caf21ba89c54ada1ca130c4a.html

http://hi.baidu.com/edeed/blog/item/b1be513db16db5ed3c6d9727.html

linux文本处理 sort,grep,sed,awk,uniq 用法相关推荐

  1. 【Linux】 字符串和文本处理工具 grep sed awk

    Linux字符串&文本处理工具 因为用linux的时候主要用到的还是字符交互界面,所以对字符串的处理变得十分重要.这篇介绍三个常用的字符串处理工具,包括grep,sed和awk ■ grep ...

  2. linux grep sed awk

    linux 文本编辑命令grep sed awk(转)     grep grep (global search regular expression(RE) and print out the li ...

  3. linux三剑客及正则表达(grep,sed,awk)

    首先我们现在知道Linux下一切皆文件,对Linux的操作就是对文件的处理,那么怎么能更好的处理文件呢?这就要用到我们上面的三剑客命令. 在说这三个命令前我们要插入一个小插曲就是"正则表达式 ...

  4. linux文本三剑客演讲稿,linux文本三剑客之grep

    grep(global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正 ...

  5. Shell ❀ 三剑客 - Grep + Sed + Awk

    文章目录 八.三剑客 - Grep + Sed + Awk 1.Grep - 过滤 1.1 常用grep参数 1.2 使用方法 2.Sed - 行匹配 2.1 执行原理 2.2 常见语法 2.3 使用 ...

  6. 三剑客grep sed awk

    三剑客 正则(RE)表达式 应用场景 规则 注意事项 正则符号 基础正则 扩展正则 正则实例 正则 VS 通配符 三剑客 grep sed sed核心应用 awk awk执行过程 内置变量 awk 正 ...

  7. 正则表达式与扩展正则表达式(grep, sed, awk)

    Linux中用来在文件中搜索字符串的命令,如grep, sed, awk等命令支持正则表达式与扩展正则表达式. 1. 基础正则表达式 符号 解释 示例 * 匹配0次或多次 b.*t . 匹配任意字符 ...

  8. Linux高级专题详解--shell编程大全(shell变量,if语句,case语句,for循环,while循环,函数调用,数组,正则表达式,shell脚本三剑客--grep,sed,awk家族)

    shell编程 初始shell 程序 语言 编程 ---------------------------------- 语言 自然语言:汉语.英语 计算机语言:c语言.c++.(java php py ...

  9. linux 文本编辑命令grep sed awk

    grep grep (global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具 ...

  10. Shell编程(三)grep sed awk文本处理三剑客

    上一章: Shell编程(二)_做测试的喵酱的博客-CSDN博客 一.ps命令 指令: ps 作用: 主要是查看服务器的进程信息 选项含义: -e:等价于 '-A' ,表示列出全部的进程 -f:显示全 ...

最新文章

  1. HDU 4166 BNU 32715 Robot Navigation (记忆化bfs)
  2. 【已更新内测入口】阿里云宣布开放开源 AliSQL 数据库 性能可提升 70%
  3. ICLR 2020将采用远程会议,首次在非洲办会可能就这样泡汤了
  4. pythonre正则表达式1012pythonre正则表达式_python re模块 正则表达式
  5. 微软面向初学者的机器学习课程:3.1-构建使用ML模型的Web应用程序
  6. 启动Jupyter Notebook时出现Kernel error错误的解决方法
  7. influxdb删除某一列(tag或者field)
  8. 3650m5设置u盘启动_联想和华硕笔记本重装系统时新BIOS无法设置u盘启动怎么办
  9. 数字特征:矩 协方差矩阵
  10. 如何在win10搜索计算机,如何在win10电脑的任务栏搜索框中添加地址?
  11. fadein和fadeto_jQuery fadeIn,fadeOut,fadeTo
  12. 我与Bootstrap
  13. 微信小程序编辑与显示列表信息
  14. Qt之布局Layout的应用
  15. 记一次阿里电话面试(java技术岗)
  16. 全球45个最热门免费下载电子图书的网站
  17. 不同终端通信用c语言实现,采用蓝牙技术的北斗终端通信模块的设计
  18. Prometheus + Grafana 图形化监控实践
  19. VTK学习笔记(三十六)VTK图像填充
  20. MATLAB第2次作业,matlab作业二

热门文章

  1. 【Jenkins】Jenkins :系统消息和邮件通知配置
  2. 中国创业者应该跟硅谷学习什么
  3. python实现自动开机_Lambda,AWS和Python的自动化管理操作 - 自动开机和关机
  4. 公益沙龙 | AutoSec汽车网络安全论坛,仅限前45,速速报名~~
  5. 星际人族Terran微操训练宝典
  6. 5.10.2 操作查询之删除查询
  7. 自制游戏引擎之shader预编译
  8. 手把手自制人工智能AI游戏1(附源码)
  9. 重庆计算机的发展,2010-2014年重庆市计算机与网络发展情况
  10. 服务器数据丢失的紧急处理办法