2016.08.04学习笔记

文本管理工具

    1.cat:查看文件,读取键盘输入

        -A:查看文件所有信息

        -n:显示行数

        -s:压缩连续的空行

    2.tac:倒序显示文件内容

    3.rev:行内的内容倒序显示

    3.more:分页显示

    4.less:一页一页显示

    5.head:分行显示,从头开始

        -n:n是数字,显示要查找的行数

        -c:指定获取多少个字节

    6.tail:从后向前显示

        -n:从后向前显示行数

        -c:查看截取的字节数

        -f:显示跟踪文件,(如果有文件输出到tail内,会自动更新显示)

        小技巧,可以用&,表示后天运行程序

    7.cut:截取命令

        -d:以什么字符截取

        -f:显示截取的第几列

        -c:按字符数切割 整列的前多少个字符

        例:cat /etc/passwd | cut -d: -f3

                表示用:分割,取第3列

        –output-delimiter=*    :表示用*号替换分隔

    8.paste:合并两文件内容

        -d:指定分隔符

        -s:压缩成一行 自己文件列成一行,第二行表示是第二个文件列变成行

    9.wc:统计行数

        格式:行数   单词数   字符数   文件名

        -l:表示共有多少行

        -w:表示单词数

        -c:表示字节数

        -m:表示字符数

        例:cat /etc/passwd |wc -l    这个文件有多少用户(多少行)

    10.sort:文本排序

        -r:反向排序

        -n:按数字大小排序

        -t:以什么字符分隔选取

        -k:选取多少列

        -f:忽略大小写

        例:cat /etc/passwd | sort  -rn -t: -k3 用户按UID从大往小排序

        -u:删除输出中的重复行

    11.diff:比较两个文件的不同

        格式:diff file1 file2

文本处理工具

    1.grep:文本过滤

        -i:忽略大小写

        -o:显示匹配文本

        -v:显示未匹配的行

        -q:不输出任何信息

        -n:显示匹配行号

        -c:显示匹配的行数

        -e:或者的关系

        -A:显示匹配后的多少行    grep -A3

        -B:显示匹配前多少行

        -C:显示匹配上下文多少行

        -w:正行匹配单词   必须是单词,两个单词相连无任何字符的不能匹配

正则表达式

    分为:

        基本正则表达式 BRE

            可以字符匹配、次数匹配、锚定、分组  

            . :匹配任意单个字符;

            [] :匹配指定范围内的任意单个字符

            [^] :匹配指定范围外的任意单个字符

            [:digit:]、[:lower:]、[:upper:]、[:alpha:]、[:alnum:]、[:punct:]、[:space:]

    例:1、显示/proc/meminfo文件中以大小s开头的  

        blob.png

        2、显示/etc/passwd文件中不以/bin/bash结尾的行   

        blob.png

        3、显示用户rpc默认的shell程序

        blob.png

         *:匹配前面的字符任意次,包括0次

        贪婪模式:尽可能长的匹配

            .*:表示任意字符

            \?:最多匹配1次,也可以是0次

            \+:最少匹配1次 可以无穷大

            \{m\}:匹配前面的字符m次

            \{m,n\}:匹配前面的字符至少m次,至多n次

            \{,n\}:匹配前面的字符至多n次

            \{m,\}:匹配前面的字符至少m次

    锚定:

        ^:在整行的开头

        $:在整行的结尾

        \<或者\b:表示单词的开始

        \>或者\b:表示单词的结束

    分组:

        \(\):将一个或多个字符捆绑在一起,当作一个整体进行处理

        括号中匹配到的内容保存在变量中,用\1,\2等可以调用这些变量

        blob.png

        括号中的内容看成整个一个连续的字符

        例:添加用户bash、testbash、basher以及nologin(其shell为/sbin/nologin),而后找出/etc/passwd文件             中用户名同shell名的行

            blob.png

        扩展正则表达式 ERE

            ^ :行首

            $ :行尾

            \<, \b :语首

            \>, \b :语尾

        分组:

            ()

            后向引用:\1, \2, …

        或者:

            a|b

            例:显示当前系统root、mage或wang用户的UID和默认shell

            blob.png

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

(0)
上一篇 2016-08-08 16:16
下一篇 2016-08-08 16:16

相关推荐

  • Linux上常用文件管理命令

    1、目录管理类的命令: mkdir, rmdir,tree,cd,pwd,ls mkdir:make directories mkdir [OPTION]… DIRECTORY… -p: 自动按需创建父目录; -v: verbose,显示详细过程; -m MODE:直接给定权限; [root@centos7 ~]# mkdir -pv…

    Linux干货 2016-11-06
  • 第五周练习

    1、显示当前系统上root、fedora或user1用户的默认shell; egrep “^(root|fedora|user1)” /etc/passwd | cut -d: -f7 2、找出/etc/rc.d/init.d/functions文件中某单词后边跟一组小括号的行,形如:hello(); grep “\<.*\>()” /etc/r…

    Linux干货 2017-08-04
  • 初识LINUX

    初识LINUX 一、计算机的组成 二、Linux的发行版本 发行版:数百种之多,主要分为: Debian分支:ubuntu、mint、knopix Slackware分支:S.u.S.E–>SLES、OpenSUSE RedHat分支: Redhat–>Centos   Fedora Core Gent…

    Linux干货 2016-09-17
  • Linux中的cut、sort、uniq以及用户(组)管理类指令应用示例

    Linux中的cut、sort、uniq指令 列出当前系统上所有已经登录的用户的用户名,注意:同一用户登录多次,只显示一次。 解决思路: 先使用who指令显示出所有已登录的用户。然后对who指令的输出进行切割得到想要的第一列内容,即只包含用户名。可以使用cut指令。最后对cut的结果进行排序并去重。可以使用sort指令。   借助管道符,可以方便的…

    Linux干货 2016-11-13
  • N26 第六周博客作业

    请详细总结 vim 编辑器的使用并完成以下练习题 ## VIM 使用总结 首先 VIM 是 VI IMproved 的缩写,是 vi 编辑器的增强型。它与 sed awk 并称为文本处理三剑客。其主要作者 Bram Moolenaar 也是个非常有爱心的人,在 vim 的[官网](http://www.vim.org/) 和 在命令行中直接输入 vim 的命…

    Linux干货 2017-03-11
  • N22第六周作业

    VIM编辑器介绍 什么是VIM? Vim是一个类似于Vi的著名的功能强大、高度可定制的文本编辑器,在Vi的基础上改进和增加了很多特性。VIM是纯粹的自由软件。 Vim是从 vi 发展出来的一个文本编辑器。代码补全、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用,和Emacs并列成为类Unix系统用户最喜欢的文本编辑器。 VIM的使用 &nbsp…

    Linux干货 2016-10-24