专业行业网站建站报价广东东莞属于哪个市
一.输出重定向
- 标准输出:是将信息输出在终端
 - 标准错误输出:在执行命令的过程中所产生错误信息也是输出在终端
 - 标准输入:从键盘输入
 
1.1标准输出重定向
- 作用:将本来要显示在终端上的信息重定向到一个文件中
 
 实现方法: 
 
- > 将文件中原有的内容全部删除,然后进行写入
 - >> 在文件原有的内容后,追加新的内容
 
1.2标准输出错误重定向
- 2>
 - 2>>
 
二.通配符
- .* 任意长度的任意字符
 - ?一个长度或者字符
 - && 只有前面的命令执行成功,后面的命令才会执行
 - || 只有前面命令执行失败,才会执行后面的命令
 - # 注释行(描述信息,不执行)
 - | 传递命令的执行结果
 - ~ 家目录
 - - 上一次所在的目录
 - $ 变量前加的符号
 - / 路径分隔符(或者根)
 -  “> >>” 重定向
 -  << 打印菜单
 
- 引号 ' ' : 弱引用,引用的内容原样输出" " : 强引用,引用中变量会变成变量的值`` : 命令替换
 -  
. 点
.表示当前目录.. 上一级目录 
- {} mkdir {1..10}.dir
 
三.正则表达式
- 构成:一堆特殊符号和字母构成----元字符
 - 作用:通过对文本中内容进行过滤,然后对文件中的内容进行过滤
 
正则表达式的种类:
- 基础正则表达式
 - 扩展正则表达式
 
通常结合三个命令使用:
- grep
 - sed
 - awk
 
①:grep命令
- 作用:对文件中的内容进行过滤
 - 格式:grep 选项 匹配内容 文件
 
 选项: 
 - -v:取反
 - -o:仅仅显出所匹配的内容
 - -E:使用扩展
 - -i:忽略大小写
 
通配符和正则的区别:
- 通配符是对文件名进行匹配,正则表达式是对文件中的内容进行匹配
 
正则中元字符:
3.1.匹配单个字符
- .表示任意一个字符(可以空格逗号字母数字...)
 
例子:匹配a前面有一个字符的行
grep".a"11.txt  3.2.[ ] 表达范围内的其中一个
- [123456] 表示匹配1或2或者3...6
 - [0-9]匹配所有的数字
 - [A-Z]匹配所有大写的字母
 - [a-z]匹配所有小写的字母
 - [a-Z]匹配所有的字母
 
 例子:匹配文件中包含数字的行 
 grep [0-9] file  例子:包含字母 a 的行 
 grep "a" file 3.3.字符集表达方式
- [[:space:]]:表示一个空格
 - [[:digit:]]:表示任意一个数字
 - [[:lower:]]:表示任意一个小写字母
 - [[:upper:]]:表示任意一个大写字母
 - [[:alpha:]]:表示任意一个字母
 - [[:alnum:]]:表示任意一个字母+数字
 - [[:punct:]]:表示任意一个标点符号
 
 例子:匹配一个包含小写字母的行 
 grep [a-z] file
grep [[:lower:]] file 3.4^[ ]
 例子:匹配以 # 开头的行 
 grep ^[#] file  [^a]  匹配除了 a 以外的任意字符 
 grep [^a] file  例子:过滤没有包含 qaz 的行 
 grep [^qaz] file  例子:过滤出 # 开头后面有一个空格的行 
 grep "^#[[:space:]]" file 3.5.显示匹配到的行的前的若干行
- -An:显示匹配到的内容的后n行
 - -Bn:显示匹配到的内容的前n行
 - -Cn:显示匹配到的内容的前后各n行
 
 例子:匹配包含 root 的行的前 3 行 
 grep -B3 "root" file 3.6.次数匹配
- "*"前面字符出现了任意次数
 - ".*" 表示任意长度的任意字符
 - "?"表示其前面字符出现最多一次
 - "a\[m,n\]b" 表示b前面的a至少出现m次,最多出现n次
 - -E a[m,n]b 加一个选项-E 则不需要加\,用法同上
 
例子:b前面的a只出现一次
grep -E "a{1,1}b" file  例子:b前面的a至少出现1次,最多次数不限 
 grep -E "a{1,}b" file 3.7.位置锚定
- ^ 表示以n为开头的行
 - $ 表示以n为结尾的行
 
例子:过滤出以y为结尾的行
grep "y$" file
 3.8.分组
- \( \) 将一个内容当作一个整体看待
 - \1 调用第一个整体
 - \2 调用第二个整体
 
 例子:在 11.txt 中,过滤出出现过俩个相同数字的行 
 grep "\([[:digit:]]\).*\1" file 3.9.扩展正则表达式
格式:
- grep -E 匹配内容 file
 - egrep 匹配内容 file
 
