目录
1.grep 命令
2.通配符
3.正则表达式
4.管道符:文件流
5.alias 命令
6.常用快捷键
1.grep 命令
关键字查找
grep 的作用是在文件中提取和匹配符合条件的字符串行。
命令格式如下:
[root@localhost ~]# grep [选项] "搜索内容" 文件名
选项:
-i: 忽略大小写
-n: 输出行号
-v: 反向查找
--color=auto: 搜索出的关键字用颜色显示
find 命令用于在系统中搜索符合条件的文件名,如果需要模糊查询,则使用通配符进行匹配,通配符是完全匹配
grep 命令用于在文件中搜索符合条件的字符串,如果需要模糊查询,则使用正则表达式进行匹配,正则表达式是包含匹配。
通配符与正则表达式的区别
2.通配符
用于匹配文件名,完全匹配
通 配 符 作 用
? 匹配一个任意字符
* 匹配 0 个或任意多个任意字符,也就是可以匹配任何内容。a*:只能a开头,但是a后面可以说任意字符 。*a*:必须 有a,但是a前后可以是任意字符。
[] 匹配中括号中任意一个字符。例如,[abc]代表一定匹配一个字符,或者是 a,或者是 b,或者是 c
[-] 匹配中括号中任意一个字符,-代表一个范围。例如,[a-z]代表匹配一个小写字母
[^] 逻辑非,表示匹配不是中括号内的一个字符。例如,[^0-9]代表匹配一个不是数字的字符
3.正则表达式
用于匹配字符串,包含匹配
正 则 符 作 用
? 匹配前一个字符重复 0次,或 1 次(?是扩展正则,需要使用 egrep命令)
* 匹配前一个字符重复 0次,或任意多次
[ ] 匹配中括号中任意一个字符。例如,[abc]代表一定匹配一个字符,或者是 a,或者是 b,或者是 c
[-] 匹配中括号中任意一个字符,-代表一个范围。例如,[a-z]代表匹配一个小写字母
[^] 逻辑非,表示匹配不是中括号内的一个字符。例如,[^0-9]代表匹配一个不是数字的字符
^ 匹配行首
$ 匹配行尾
4.管道符:文件流
命令格式: 命令 1 | 命令 2
管道符不支持find命令
命令 1 的正确输出作为命令 2 的操作对象
[root@localhost ~]# ll -a /etc/ | more
我想在命令 ll /etc/的结果中搜索 yum 的文件名,应该使用 find 命令?还是 grep 命令?
答:grep,因为管道符命令一输出的是字符串
[root@localhost ~]# ll -a /etc/ | grep yum
[root@localhost ~]# netstat [选项]
选项:
-a: 列出所有网络状态,包括 Socket 程序
-c 秒数: 指定每隔几秒刷新一次网络状态
-n: 使用 IP 地址和端口号显示,不使用域名与服务名
-p: 显示 PID 和程序名
-t: 显示使用 TCP 协议端口的连接状况
-u: 显示使用 UDP 协议端口的连接状况
-l: 仅显示监听状态的连接
-r: 显示路由表
wc + 文件名: -l 只统计多少行
统计该文件下的字符串
[root@localhost ~]# netstat -an | grep "ESTABLISHED" | wc -l
#如果想知道具体的网络连接数量,就可以再使用 wc 命令统计行数统计正在连接的网络连接数量
5.alias 命令
命令的别名:补充命令
命令的别名,就是命令的小名,主要是用于照顾管理员使用习惯的。
命令格式:
[root@localhost ~]# alias
#查询命令别名
[root@localhost ~]# alias 别名='原命令'
#设定命令别名
用命令定义的别名,是临时生效的,要想永久生效,需要写入环境变量配置文件~/.bashrc
6.常用快捷键
Tab 键 命令或文件补全
ctrl+A 把光标移动到命令行开头。如果我们输入的命令过长,想要把光标移动到命令行开头时使用。
ctrl+E 把光标移动到命令行结尾。
ctrl+C 强制终止当前的命令。
ctrl+L 清屏,相当于 clear命令。
ctrl+U 删除或剪切光标之前的命令。我输入了一行很长的命令,不用使用退格键一个一个字符的删除,使用这个快捷键会更加方便
ctrl+Y 粘贴 ctrl+U剪切的内容。