课堂笔记(6)

笔记

1.fgrep 不支持正则表达式搜索
2.grep abc   接受标准输入,表示可以接受管道来对输出进行处理
3.grep [file] 可有可无  可以没有文件意味着接受标准输入
  Usage: grep [OPTION]… PATTERN [FILE]…
  Usage: cat [OPTION]… [FILE]…
4.grep “$USER” /etc/passwd       grep也可以使用变量作为pattern来查找
5.grep `whoami` /etc/passwd   grep也可以使用命令替换做为pattern来查找
6.cat -n /etc/passwd | grep root 有行号   通过cat -n 的带行号内容的输出再进行grep搜索
7.grep -q 做是否包含判断  -q 选项为静默输出,不输出任何内容,可通过echo $?来判断是否命令是否执行成功
8.nmap -v -sP 172.20.20.0/24 扫网段存活主机
9.grep -e ‘cat’ -e ‘bash’ /etc/passwd 多个或者关系的pattern可以使用-e 来连接
10.grep中的单词是由数字、下划线、字母组成的,不是通过空格分隔
11.grep -f file 中的匹配字符是或者关系  类似-e
12.通配符(pattern)是匹配文件名的内容,在有些命令使用中会有pattern的支持,正则表达式处理文本中特定的字符串(REGEXP)
13.正则表达式软件模块(PCRE:Perl Compatible Regular Expressions),依赖正则表达式的需要安装该软件包
14.单个汉字也算一个字符,所以可以通过.号来匹配
15.ls |  grep … ls管道输出的是内容,不在是文件名,所以可以使用grep来处理
16.echo abb | grep “ax*b” 符合匹配,因为abc前的ab匹配a*b
   echo abab |grep -E “(ab)*” 匹配ab组合零次或多次
17.grep -o 只显示匹配的内容(常用),常用于取值做判断
   df |grep ‘/dev/sda’ |grep -o ” [[:digit:]]\{1,3\}%” | grep -o “[0-9]\+”|sort -nr |head -1
18.默认贪婪匹配 echo abccdd |grep “a[a-z]c”   匹配结果abcc
19.\? 出现次数为0次或1次,使用egrep(grep -E 选项可以直接使用?而不需要\来转义)
20. .放在中括号中只是.字符不是需要匹配的单个字符,不需要\线转译,如:echo “1.” |grep “[a-z.]\+” 匹配
21.Ctrl + k从光标处删除至命令行尾
22.ifconfig ens33|grep -o  “[0-9]\{1,3\}[.][0-9]\{1,3\}[.][0-9]\{1,3\}[.][0-9]\{1,3\}”  |head -1
23.grep 的模式(pattern)注意要加引号,否则容易有问题
24.grep  -v “^[[:space:]]*$” f1  [[:space:]]表示有tab键或有空格
25.grep “root\>” /etc/passwd     锚定词尾
26.grep “\broot\b” /etc/passwd 锚定整个单词(与grep -w 查找单词相同)
27.grep wangwangwang |grep “\(wang\)\{3\}” 匹配整体  注意要使用转译字符
28.后向引用grep wangwangwangxxxxwangwangwang |grep “\(wang\)\{3\}.*\1
\1匹配的是结果,而非模式本身
29.grep “^bash.*bash$” /etc/passwd    查找出以bash开头同时也是bash结尾的行
30.grep ‘^\(.*\):.*/\1$’ /etc/passwd  查找首尾相同的行
31.grep “^\(a\|b\).*” /etc/passwd    查找出以a开头或者以b开头的行
32.echo axy |grep “\(a\|b\)xy”       查找出存在axy或者bxy的行
33.grep -o “[0-9]\+” /etc/redhat-release |head -n1  找出文本中的主版本号
34.扩展正则表达式即去掉了正则表达式中的转义字符\,除了单词锚定的为/<和/>  如egrep (grep -E)
35.grep -Ewo “[0-9]{2,3}” /etc/passwd 查找出文件中存在二位到三位的数字
36.grep -E = egrep
37.echo “/etc/rc.d/init.d/functions” |grep -Eo “[^/]*/?$”    取输出内容的基名
38.vim -d file1 file2  -d选项用于比较两个文件不同之处
39.vi编辑器 I键直接跳到行首,A 直接跳到行尾
40.vi 另存为 :w  another file
41. !表示强制 q键可以直接退出,修改文件后需要q!
42.r file 读文件, 可以r!command 读入命令输出
43.vi +/pattern file pattern 为正则表达式
44.%s/\(haha\)/\1er/  vim编辑器中只支持基本的正则表达式
45.%s/^UUID/#&/
46.ctrl +r 取消撤销
47.:set ff=unix  将window文件格式的内容修改成unix文件的格式
48.vimtutor  查看vim的编辑器帮助
48.cat hellp.sh | bash    可用来远程调用
49.curl http://192.168.30.128/hello.sh |bash 远程调用执行
50.ls 不指定文件文件夹的情况下使用-d选项是显示当前路径的文件或目录而不递归目录
51.vim寄存器  3″ayy 表示复制三行到t寄存器
              “ap  表示将t寄存器的内容粘贴,最多可以有26个寄存器即a-z
52.vim编辑器中使用ctrl +r 可以重做最后的撤销更改,使用U撤销光标落在这行后的所有的此行的更改
53.vim编辑器中使用的选择替换使用的是基本的正则表达式,所以在使用匹配次数?和+ 号需要使用转义字符,即 \? 和\+

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/95370

(0)
涤生涤生
上一篇 2018-04-08
下一篇 2018-04-08

相关推荐

  • 文本处理工具sed

    sed:是行编辑器是一款流编辑器,是一门语言,;比grep强大,不光能看还能改,你值得拥有。地址定界:对第几行进行操作不给地址:对全文处理单地址#指定的行,$最后一行/字符,正则/:被此处模式匹配到的每一行地址范围:#,#:第几行到第几行#,+#:从第#行往后加#行(包括#,)/a字符串/,/b字符串/:从a匹配到b(如果找不到b就会从a打印到最后一行)#,…

    2018-04-19
  • 权限

    chmod 更改权限 语法 1 who 对谁操作 opt做什么操作 per 跟什么权限 跟文件 who u g o a opt +增加 -减掉 =覆盖 per rwx reset 重复系统 文本文件 r 读 打开 w 改 x 执行程序 chown 更改所有者 chgrp 更改所属组 chmod who (u) opt (g)per(o) file文件 绿色有…

    Linux笔记 2018-04-08
  • 脚本练习题

    1.使用脚本打印出如下图形 ************答案一:#!/bin/bash#1.接受一个参数为星星的个数。num=$1 #2.求出总共要打印的行数let lines=num*2 #3.for 循环处理每一行的数据for i in `seq $lines`;do#4.前半个星星处理逻辑if [ $i -le $num ];thenfor j in `s…

    Linux笔记 2018-03-26
  • 我的第一篇博客!

    大家好,我在178linux开博文了,欢迎大家斧正!

    Linux笔记 2018-05-02
  • puppet实现nginx反代tomcat+memcached

    puppet实现nginx反代tomcat+memcached

    2018-04-16
  • 自建yum仓库,分别为网络源和本地源

    [base] name=CDRom baseurl=file:///mnt gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 [CentOS] name=CentOS.org baseurl=http://vault.centos.org/7.4.1708/os/x86_64/ enabled=1 gpg…

    Linux笔记 2018-06-07