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)
上一篇 2016-08-07 22:06
下一篇 2016-08-07 22:06

相关推荐

  • 有关磁盘管理与文件系统

    硬盘物理结构      扇区  磁头  磁道   柱面   磁道数      扇区*一个磁道上的扇区个数*磁头数=柱面      柱面*磁道数=硬盘大小      一个扇区512字节   &…

    2017-08-19
  • N26-博客作业-week7

    1、创建一个10G分区,并格式为ext4文件系统;      (1) 要求其block大小为2048, 预留空间百分比为2, 卷标为MYDATA, 默认挂载属性包含acl;     ~]# fdisk /dev/sda Welcome to fdisk (util-li…

    Linux干货 2017-03-19
  • shell编程及rpm包

    1. shell编程    case 实现条件判断, 无论是case后面还是值后面都是没有任何标点符号的。    case支持通配符, 如果想要表示其他的话, 可以使用*放到最后。 用*表示其他。   2. 用tar打包的文件或则目录,这些文件或则目录的的ACL(访问控制列表)权限会丢失。…

    Linux干货 2016-08-18
  • Linux入门(二)

    linux基础命令及应用     shutdown:关机命令         -r:重启         -h:关机    &nb…

    Linux干货 2016-08-02
  • Linux LVM介绍及管理

    什么是LVM? LVM是逻辑盘卷管理(LogicalVolumeManager)的简称,它是Linux环境下对磁盘分区进行管理的一种机制,LVM是建立在硬盘和分区之上的一个逻辑层,用来提高磁盘分区管理的灵活性。系统管理员可以通过LVM轻松的管理磁盘分区,如:将若干个磁盘分区或物理磁盘连接为一个整块的卷组 (volumegroup),形成一个存储池。管理员可以…

    Linux干货 2016-08-30
  • MariaDB之MHA配置

    工作拓扑 一、MHA简明:     MHA(Master HA)是一款开源的MySQL的高可用程序,它为MySQL主从复制架构提供了    automating master failover 功能。MHA在监控到master节点故障时,会提升其中    拥有最新数据的…

    2014-10-08