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
下一篇 2016-08-07

相关推荐

  • ☞实时数据同步方案{ rsync; inotify; }

    实时数据同步方案{ rsync; inotify; } rsync 传输数据 安装 rsyncd 服务 CentOS 6 CentOS 7 配置 rsyncd 服务 配置 rsync 手动同步示例     启动 rsyncd 服务 CentOS 6 CentOS 7 rsync 客户端命令 rsync 数据传输功能 基…

    Linux干货 2016-10-29
  • 链接的“软”与“硬”

    前言     类似Windows系统,Linux系统在进行文件管理时,也会引入链接概念。而链接又分为软链接和硬链接,两种链接适用于不同场合、不同用途,各有优缺点。在介绍软硬两种链接之前,需要先引入inode的概念。 Inode:     系统在管理文件时,为了有序寻址,会将元数据(metadata)和用户数据…

    Linux干货 2016-10-20
  • 7.磁盘及文件系统管理

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

    Linux干货 2017-08-21
  • Linux简介和基础

    一、系统和硬件 无论是Linux、OS X、Windows操作系统,他们都是由以下部分组成(分层结构): 最底层:硬件 底层之上:将硬件的接口抽象成为系统调用(kernel) 再之上:库 再此之上为:应用程序 程序的运行可以有两种方式: 1、开机自动启动运行 2、用户通过交互式接口登陆或者连接系统上去,来手动运行程序 二、终端: 1、物理终端:我们可以将显示…

    Linux干货 2017-09-02
  • 小白学习Linux系统一周总结

         告别平凡,安定而又没什么前途的工作,我选择了报了门热门的计算机课程--python运维开发。我不知道为什么一开始就学Linux系统,我早预料到这是一个艰难的开始,还好我不是完全没有基础,以前有学过iOS开发。看到着终端中的“\”表示根目录,我轻微有点亲切感,不像第一次看到终端时的恐惧。我总结这周的学习感受,希…

    Linux干货 2017-09-04
  • 集中练习2

    用户管理、文本处理、文件管理相关

    2017-09-20