8.5-文本处理工具(命令篇)

 1、文件查看命令: cat, tac,rev

cat [OPTION]... [FILE]...
    -E: 显示行结束符$
    -n: 对显示出的每一行进行编号
    -A:显示所有控制符
    -b: 非空行编号
    -s:压缩连续的空行成一行
  
    [root@localhost ~]# cat -E aa
    sadsada asda$
     dasdasd  adas$
    $
      adas$
    [root@localhost ~]# cat -A aa
    sadsada^Iasda$
    ^Idasdasd^I^Iadas$
    $
    ^I^Iadas$
    [root@localhost ~]# cat -b aa
         1 sadsada asda
         2  dasdasd  adas
    
         3   adas
tac命令用于将文件以行为单位的反序输出,即第一行最后显示,最后一行先显示
    -a或——append:将内容追加到文件的末尾
    -i或——ignore-interrupts:忽略中断信号
rev命令将文件中的每行内容以字符为单位反序输出,即第一个字符最后输出,最后一个字符最先输出

2、分页查看文件内容

more [OPTIONS...] FILE...
    -d: 显示翻页及退出提示
    
  less:一页一页地查看文件或STDIN输出
    查看时有用的命令包括:
    /文本 搜索 文本
    n/N 跳到下一个 或 上一个匹配
    less 命令是man命令使用的分页器

 3、显示文本前或后行内容

head [OPTION]... [FILE]...
    -c #: 指定获取前#字节
    -n #: 指定获取前#行
    -#: 指定行数
tail [OPTION]... [FILE]...
    -c #: 指定获取后#字节
    -n #: 指定获取后#行(n可省略)
    -n +#:显示文本,忽略文件前n行
    -f: 跟踪显示文件新追加的内容,常用日志监控

4、cut命令用来显示行中的指定部分,删除文件中指定字段。cut经常用来显示文件的内容,类似于下的type命令。

cut(选项)(参数)
    -b:仅显示行中指定直接范围的内容;
    -c:仅显示行中指定范围的字符;
    -d:指定字段的分隔符,默认的字段分隔符为“TAB”;
    -f:显示指定字段的内容;
        #: 第#个字段
        #,#[,#]:离散的多个字段,例如1,3,6
        #-#:连续的多个字段, 例如1-6
        混合使用: 1-3,7
    --out-delimiter=<字段分隔符>:指定输出内容是的字段分割符;
显示文件或STDIN数据的指定列
cut -d: -f1 /etc/passwd
cut /etc/passwd | cut -d: -f7
cut -c2-5 /usr/share/dict/word

5、paste 合并两个文件同行号的列到一行

  paste [OPTION]... [FILE]...
      -d 分隔符:指定分隔符,默认用TAB
      -s : 所有行合成一行显示
      paste f1 f2
      paste -s f1 f2

6、计数单词总数、行总数、字节总数和字符总数

可以对文件或STDIN中的数据运行
    $ wc story.txt
      39 237 1901 story.txt
      行数 字数 字符数
      使用 -l 来只计数行数
      使用 -w 来只计数单词总数
      使用 -c 来只计数字节总数
      使用 -m 来只计数字符总数

7、把整理过的文本显示在STDOUT,不改变原始文件

$ sort [options] file(s)
    常用选项
    -r 执行反方向(由上至下)整理
    -n 执行按数字大小整理
    -f 选项忽略( fold)字符串中的字符大小写
    -u 选项(独特, unique)删除输出中的重复行
    -t c 选项使用c做为字段界定符
    -k X 选项按照使用c字符分隔的X列来整理能够使用多次

正则表达式

正则表达式.png

原创文章,作者:M20-1--孔祥文,如若转载,请注明出处:http://www.178linux.com/30020

(0)
M20-1--孔祥文M20-1--孔祥文
上一篇 2016-08-07 22:06
下一篇 2016-08-07 22:06

相关推荐

  • 马哥教育网络班20期+第5周课程练习

    1、显示/boot/grub/grub.conf中以至少一个空白字符开头的行; [root@localhost ~]# grep '^[[:space:]]\+' /boot/grub/grub.conf 2、显示/etc/rc.d/rc.sysinit文件中以#开头,后面跟至少一个空白字符,而后又有至…

    系统运维 2016-07-12
  • 加密和解密技术基础(01) ~ 105分钟

    加密和解密技术基础(01) ~ 105分钟 讲课思路: 互联网通信机制 –> 网络协议模式(osi,tcp/ip模型) –> 数据通信安全  à 数据加密 –> 加密算法 –> OpenSSL是什么 à SSL通信原理 –> CA –> OpenSSL命令用法 à CA 自签及签证演示 1.1 &nbs…

    Linux干货 2016-09-19
  • RAID有点意思

        独立硬盘冗余阵列(RAID, Redundant Array of Independent Disks),旧称廉价磁盘冗余阵列(Redundant Array of Inexpensive Disks),简称磁盘阵列。其基本思想就是把多个相对…

    Linux干货 2017-06-19
  • 方便实用的文件查找与压缩

    在平时的运维工作当中通常会编辑某些文件,但时间久了,突然一下子记不起文件的名字,遇到的事情又很紧急,需要立马去处理,而自己只知道那个文件部分的特征信息,我们需要在系统中去搜索自己想要的文件,那么有没有办法去实现呢,当然有,在我们的系统中,文件查找的工具有两个,locate和find。那么下面来介绍这两个工具的用法以及两个工具之间的差别。 在我们linux系统…

    Linux干货 2016-08-13
  • N26-上海-莫言

    持续更新…

    Linux干货 2016-12-26
  • Linux基础(七)-软RAID,LVM,bash脚本之循环

    1.创建一个10G的分区,并格式为ext4的文件系统; (1)要求其block大小为2048,预留空间百分比为2,卷标为MYDATA,默认挂载属性包含acl;(2)挂载至/data/mydata目录,要求挂载时禁止程序自动运行,且不更新文件的访问时间戳; [root@localhost ~]# fdisk /dev/sdb We…

    Linux干货 2016-11-06