|
多命令执行方法:
脚本组成;
1.shengbang
2.#
3.空白行——没有任何内容的行、只包含空白字符或制表符(TAB)
4.逻辑判断
shell脚本编程:
1.加执行权限,通过路径来调用脚本;
2.利用解释器直接执行;
本文处理工具:
vim、vi、nano
文本处理三剑客:
grep系:
grep、egrep、fgrep,文本搜索工具,基础“pattern”对于给定的文本进行模糊搜索,grep系默认工作于贪婪模式下;
sed:stream editor,流数据器,行编辑器,文本编辑工具;
awk:gawk,——gun awk,文本格式化工具,文本报告生成器,文本处理的编程语言;
cut、sort
grep系:
grep
egrep
fgrep
grep:global search regular expression and print out the line。
利用正则表达式进行全局搜索并将匹配的行显示出来;
grep [OPTIONS] PATTERN [FILE...]
PATTERN:过滤条件,是由正则表达式元字符以及没有特殊含义的文本字符组成;
正则表达式的元字符:
会被正则表达式引擎解释为特殊含义;
pcre(最完整的正则表达式引擎)——perl语言的正则表达式引擎;
基本的正则表达式:bre
扩展的正则表达式:ere
grep:默认仅支持基本正则表达式;
egrep:默认仅支持扩展正则表达式;
fgrep:默认不开启正则表达式引擎;
文本字符:
只具备字符便面含义的那些字符;
常用选项:
-i, --ignore-case:忽略文本字符的大小写;
-v, --invert-match:反相匹配;最终显示的结果是pattern不能成功匹配的行;
-c, --count:计数,统计匹配pattern的所有的行数;
-o, --only-matching:关闭贪婪模式,仅显示pattern能够匹配的内容;
-q, --quiet, --silent:安静模式,不输出任何匹配结果;
--color[=WHEN], --colour[=WHEN]:将匹配pattern的内容以特殊颜色高亮显示;
--color=auto
-E, --extended-regexp:扩展的正则表达式,grep -E相当于egrep
-F, --fixed-strings, --fixed-regexp:grep -F 相当于fgrep
-G, --basic-regexp:基本的正则表达式,egrep -G 相当于grep
-P, --perl-regexp:使用pcre(perl common regular expression)引擎;
-A NUM, --after-context=NUM:在显示匹配pattern的行的同时显示其后面的num行;
-B NUM, --before-context=NUM:在显示匹配pattern的行的同时显示其前面的num行;
-C NUM, -NUM, --context=NUM:在显示匹配pattern的行的同时显示其前后各num行;
pattern:
正则表达式元字符:
基本的正则表达式元字符:
globbing--------简化版的正则表达式:[] ? *
字符匹配:
. :匹配任意单个字符;
[] :匹配指定范围内的任意单个字符;
[^] :匹配指定范围意外的任意单个字符;
下列所有的字符集都可以放置于[]之中用于匹配单个字符;
[:lower:]:表示所有小写字字母;
[[:lower:]]:通配任意单个小写字母;
[:upper:]:表示所有的大写字母;
[[:upper:]]:通配任意单个大写字母;
[:alpha:]:表示所有字母字符;
[:digit:]:表示所有的十进制数字; 10
[:alnum:]:表示所有的大小写字母以及十进制数字;
[:space:]:表示空白字符;
[:punct:]:表示所有的标点符号;
[:blank:]:表示空白字符;
[:xdigit:]:所有的十六进制数字;
a-z:所有的小写字母;
A-Z:所有的大写字母;
0-9:所有的十进制数字;
次数匹配:该类字符之前的那个字符可以出现的字数;
*:其前面的字符可以出现任意次(0次,1次或多次);
\?:其前面的字符可有可无(0次或1次);
\+:其前面的字符至少出现一次(1次或多次);
\{m\}:其前面的字符必须出现m次;
\{m,n\}:其前面的字符至少出现m次,至多出现n次;(m |
|
|