Linux基础命令之文本命令

关于文本的命令:

    1.文件查看命令:

       a.cat:查看文件,实现参数给的内容一个个显示出来

           -n:显示行号(显示的空行的行号)

           -b:显示行号(但空行不显示行号)

           -s:当有连续的多个空行压缩为单行(只压缩空行,多行连续的字符不会被压缩)

           -v:查看文件中的 ^M

           -T:显示文件中的TAB键显示为^I

           -e:显示行结束符$

           -A:显示所有的控制符相当于 -evT    

        b.tac:与cat命令的用法相同,只是将cat命令显示的内容反向显示出来

        c.tev:将文件中的字符倒序显示,每一行倒序显示。

    2.分页查看文件

        a.more:按照页数一页页的显示文本中的内容

            space:向下翻一页

            d:向下翻半屏

            Enter:向下滚动一行

            /PATTERN:查找想要匹配的字符

            q:退出more显示的内容,不再显示该内容,退回到命令模式

            d:向前翻一页

        b.less:分屏显示内容

            q命令退出

            用法和man命令的指令相似

            space:向下翻动一页

            /PATTERN:向下查询“字符串”的功能

            ?PATTERN:向上查询“字符串”的功能

               n:重复前一个查询的方向查询

               N:重复前一个查询的反方向查询

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

         a.head:取出前N行的内容

           head [OPTION]… [FILE]…

              -c #: 指定获取前#字节

              -n #: 指定获取前#行

              -#:指定行数

         b.tail:取出后N行的内容

           tail [OPTION]… [FILE]…

              -c #: 指定获取后#字节

-n #: 指定获取后#行

-#:指定行数

-f: 跟踪显示文件新追加的内容, 常用日志监控

                ※-f命令的扩展※

                tail -f /var/log/message:查看日志监控文件,缺点当打开文件中会后无法继续使用命令行编辑器去执行另外的操作

                tail -f /var/log/message &:查看新增的日志文件,当日志的输出打断命令行的输入时,无需重新输入命令,只需将原来想要执行的命令执行完毕之后即可

      4.按列抽取文本和合并文件

         a.cut:将某些信息的某一段切割出来

             cut [OPTION]… [FILE]…

              -d DELIMITER: 指明分隔符,默认tab

              -f FILEDS:

                  #: 第#个字段

                  #,#[,#]:离散的多个字段,例如1,3,6

                  #-#:连续的多个字段, 例如1-6

                     混合使用:1-3,7

              -c:按字符切割

              –output-delimiter=STRING 指定输出分隔符  

          显示文件或STDIN 数据的指定列

                cut -d: -f1 /etc/passwd

                cat /etc/passwd | cut -d: -f7

                cut -c2-5 /usr/share/dict/words

         b.paste 合并两个文件同行号的列到一行

            paste [OPTION]… [FILE]…

                -d 分隔符: 指定分隔符,默认用TAB

                -s : 所有行合成一行显示

                paste f1 f2

                paste -s f1 f2

     5.分析文本的工具

          a.wc:文本数据统计

           计数单词总数、行总数、字节总数和字符总数;可以对文件或STDIN 中的数据运行

              -l:来只计数行数

              -w:来只计数单词总数

              -c:来只计数字节总数

              -m:来只计数字符总数

                wc story.txt

                39 237 1901 story.txt

               行数 字数 字符数

          b.sort:整理文本

            文本排序sort:把整理过的文本显示在STDOUT ,不改变原始文件

            sort [options] file(s)

               -r 执行反方向(由上至下)整理

               -n 执行按数字大小整理

               -f 选项忽略(fold )字符串中的字符大小写

               -u 选项(独特,unique )删除输出中的重复行

               -t c 选项使用c 做为字段界定符

               -k X 选项按照使用c 字符分隔的X 列来整理能够使用多次

         c.diff 和patch:比较文件

            diff比较两个文件之间的区别

            diff foo.conf-broken foo.conf-works

              5c5

              < use_widgets = no

                —

              > use_widgets = yes

              ?  注明第5 行有区别(改变)

            patch:复制对文件改变

            diff 命令的输出被保存在一种叫做“补丁”的文件中使用 -u 选项来输出“统一的(unified )”diff 格式文件,最适用于补丁文件。

            patch 命令复制在其它文件中进行的改变(要谨慎使用!)

            适用 -b 选项来自动备份改变了的文件

            diff -u foo.conf-broken foo.conf-works > foo.patch

            patch -b foo.conf-broken foo.patch

      d.uniq 命令:从输入中删除重复的前后相接的行

            uniq [OPTION]… [FILE]…

              -c: 显示每行重复出现的次数;

              -d: 仅显示重复过的行;

              -u: 仅显示不曾重复的行;

              连续且完全相同方为重复

              常和sort命令一起配合使用:

              sort userlist.txt | uniq -c

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

(0)
sjsirsjsir
上一篇 2016-08-07 22:07
下一篇 2016-08-07 23:33

相关推荐

  • CentOS的启动流程

                      一个操作系统的开启与关闭不是我们手动的打开与关闭电源那么简单。这个过程中涉及太多的内部服务的打开与关闭。而在这个过程中如果出现什么问题,那么以后的某些服务…

    2017-09-01
  • 大数据计算:如何仅用1.5KB内存为十亿对象计数

    Big Data Counting: How To Count A Billion Distinct Objects Using Only 1.5K This is a guest post by Matt Abrams (@abramsm), from Clearspring, discussing how they are able to accurat…

    Linux干货 2015-04-08
  • 推荐-btrfs文件系统介绍及操作

    btrfs文件系统支持写时复制功能,对备份很有帮助。在单个硬盘时,btrfs是没有意义的。     核心特性:         多物理卷支持:btrfs可由多个底层物理卷组成;支持RAID,以联机“添加”、“移除”,“修改”;       …

    Linux干货 2016-06-01
  • linux下逻辑卷管理LVM

    LVM:逻辑卷管理 LVM这个技术就是把底层的存储设备组成一个卷组,底层存储设备的存储空间会变成一个个PE(盘区,大小为2的n次方),这个卷组里就是一个个的PE,然后,这个卷组会重新分区,这些分区就为逻辑卷,这些逻辑卷都是由卷组里分配的PE组成。 关于LVM里的命令: pv的命令: pvcreate pvs pvdisplay pvscan pvremove…

    Linux干货 2015-08-04
  • N25第5周作业(grep和find使用)

    显示当前系统上root, fedora 或user1的默认shell 找出/etc/rc.d/init.d/functions文件中某单词后面跟一组小括号的行,形如:hello(); 使用echo命令输出一个绝对路径,使用grep取出基名,扩展取出其路径名 找出IFCONIFG命令结果的1-255之间的数字 挑战题:写一个模式,能匹配出合理的IP地址 挑战题…

    Linux干货 2016-12-30
  • LAMP分离环境的搭建(最新版本的mysql+php+http源码编译安装)

    实验者:FrankStar      实验日期:20150628 任务:主要是实现在Linux环境下配置LAMP环境,利用VMware+centos6.4实现,将LAMP分离为多台主机; 附注:由于大家的环境不一样,可能有些人已经安装了这个包或者那个软件,所以调试的环境结果也不一样,为了尽量能模拟到 可能出现的所有问题,在编译会…

    Linux干货 2015-06-30