liunx文本处理三剑客及文本处理工具的使用与练习。

linux文本处理三剑客:

grep ==擅长过滤,把想要的或者不想要的分离开。linux三剑客 老三  -A: 除了显示匹配的一行之外,并显示该行之前的num行;-B:除了显示匹配的一行之外,并显示该行之后的num行;-C:除了显示匹配的一行之外,并显示该行之前后各num行    

sed==擅长取行、替换。三剑客老二 ①过滤:sed -n’/过滤的内容/处理的命令’  文件,-n 取消sed的默认输出。-i:改变文件内容。其中处理的命令:p:print打印,d:delete删除。例子:sed ‘/oldboy/d’ test.txt;sed -n’/oldboy/p’ test.txt      sed替换:sed -i ‘s#oldboy#oldgirl#g’a.txt  s常说的查找并替换,用一个字符串替换成另一个 ;g与s联合使用时,表示对当前行全局匹配替换(与下一个g意义不同) -i 修改文件内容 , #是分隔符,可以用、@等替换

      awk==三剑客老大。一门语言,过滤内容(擅长取列) awk -F”分隔符号“‘{print $1}’ 文件  <==$第一列,$2第二列,$NF最后一列$(FN-1)倒数第二列例:①[root@TRY1 ~]# awk ‘{print $1}’ awk.txt  ② awk ‘{if(NR<31 && NR>19) printf $1″\n”}’ test.txt 输出打印20-30的第一列;NR代表行号,&&(and)并且 \n回车换行

 

正则表达式及文本处理练习题:

显示/etc/meminfo文件中以大小s开头的行

grep ^[sS] /proc/meminfo

liunx文本处理三剑客及文本处理工具的使用与练习。

显示用户rpc默认的shell程序。

 grep “^rpc\>”   /etc/passwd  | cut -d : -f7

liunx文本处理三剑客及文本处理工具的使用与练习。

找出/etc/passwd/中的两位或三位数。

grep -o “\<[0-9]\{2,3\}\>” /etc/passwd

liunx文本处理三剑客及文本处理工具的使用与练习。

利用df和grep,取出磁盘各分区利用率,并从大到小排序

 df |grep ^/dev/sd |grep -o “\b[[:digit:]]\{1,3\}\b%”|sort -rn

liunx文本处理三剑客及文本处理工具的使用与练习。

 

显示三个用户root、mage、wang的UID和默认shell。

  grep -e “^root\>” -e “^mage\>” -e “^wang\>” /etc/passwd | cut -d: -f3,7

  egrep “^(mage|root|wang)\>” /etc/passwd | cut -d: -f3,7

 

 

找出/etc/rc.d/init.d/functions文件中行首为某单词(包括下划线)后面跟一个小括号的行。

liunx文本处理三剑客及文本处理工具的使用与练习。

 

将此字符串:welcome to magedu linux 中的每个字符去重并排序,重复次数多的排到前面

  echo “welcome to magedu linux” |tr -d ” ” |egrep -o [[:alnum:]] |sort|uniq -c|sort -nr

liunx文本处理三剑客及文本处理工具的使用与练习。

 

原创文章,作者:15893442518,如若转载,请注明出处:http://www.178linux.com/82921

(2)
上一篇 2017-07-28 19:41
下一篇 2017-07-28 22:08

相关推荐

  • ansible日常入门指南

    ansible的一些基本用法

    2018-01-24
  • linux作业管理

    作业管理 kill kill命令:     向进程发送控制信号,以实现对进程管理     显示当前系统可用信号:kill -l     常用信号:man 7 signal    &…

    Linux干货 2016-09-09
  • 文件系统的创建和管理

    作业:文件系统的创建和管理 思路:管理通常就是增删改查[*代表某一数值,测试机centos6使用的就是ext4,不要问我为什么了,马哥告诉我的,你问他吧!];   事情准备检查系统支持和使用的文件系统格式:         #lsmod  &nbsp…

    Linux干货 2016-01-19
  • M20 – 1- 第三天:终端和基本命令

      今天学了一些初步的命令,能实现一些基础功能。 chvt : change vitrual terminal 切换虚拟终端 使用方法 : chvt # <- 加终端号 注意:图形界面不能随意切换其他的终端,只有在字符行节目才能进行切换。 lsb_release:查看系统信息 使用方法:lsb_release -a tty:查看终端类型 使用…

    Linux干货 2016-07-29
  • N26-第五周作业-邢岩

    马哥门徒-N26-邢岩    我要继续今天的博客,《一万小时天才理论》里提到了髓鞘质,我是不是正在慢慢的给自己包裹一层髓鞘质呢?如果还没有,那么继续吧。    第一题:显示当前系统上root、fedora或user1用户的默认shell。      ~]# grep -E &#8…

    2017-02-24
  • DHCP服务

    dhcp server: DHCP:Dynamic Host Configuration Protocol     arp –> address resolving Protocol     &nbsp…

    Linux干货 2016-11-01