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)
1589344251815893442518
上一篇 2017-07-28
下一篇 2017-07-28

相关推荐

  • Net25-第9周作业

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; #!/bin/bash for line in `cat /etc/passwd`;do if [[ `echo $line | awk -F: ‘{print $7}’` == ‘/sb…

    Linux干货 2017-03-15
  • 第五周

    显示/boot/grub/grub.conf中以至少一个空白字符开头的行 egrep "^[[:space:]]+" /boot/grub/grub.conf 显示/etc/rc.d/rc.sysinit文件中以#开头,后面跟至少一个空白字符,而后又有至少一个非空白字符的行 egrep "^#[[:…

    Linux干货 2016-09-19
  • 第二周的作业

    1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。 命令:ls NAME:用于列出目录的内容; SYNOPSIS:ls [OPTION]… [FILE]… FILE: 如果FILE是个文件的话,则显示文件名; 如果FILE是个目录的话,则列出目录的内容; OPTION: -l:显示长格式的信息,一共包含了7个…

    Linux干货 2016-11-23
  • btr文件系统与网络基础

    btrfs文件系统技术预览版Btrfs (B-tree, Butter FS, Better FS), GPL, Oracle, 2007, CoW核心特性:多物理卷支持:btrfs可由多个底层物理卷组成;支持RAID,以及联机“添加”、“移除”,“修改”写时复制更新机制(CoW):复制、更新及替换指针,而非“就地”更新数据及元数据校验码:checksum子…

    Linux干货 2016-09-02
  • 文件管理命令及变量基础

    文件管理工具:cp,    mv,     rm       cp命令:copy 源文件;目标文件 单源复制: cp [OPTION]….[-T]  SOURCE  DEST 多源复制:cp [OPTION] ….SOURCE…DIR…

    Linux干货 2016-12-21
  • 马哥教育网络班22期+第1周课程练习

    1、描述计算机的组成及其功能 CPU:运算器、控制器、寄存器、缓存 存储器:内存,RAM(Random Access Memory) Input:下指令,提供数据等 Output:输出数据加工的结果 2、按系列罗列Linux的发行版,并描述不同发行版之间的联系与区别 Debian系列         ubuntu &n…

    Linux干货 2016-08-15