本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/95370
笔记
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编辑器中使用的选择替换使用的是基本的正则表达式,所以在使用匹配次数?和+ 号需要使用转义字符,即 \? 和\+
赞 (0)
权限
上一篇
2018-04-08
对正则表达式,VIM的基本命令的操作,SHELL编程的基本格式等的一些见解。
下一篇
2018-04-08