过滤器
grep — 选择器
- grep 是一个强大的文本搜索工具,可以使用正则表达式,并返回匹配的行,语法为:
选项 | 说明 |
---|
-v | 反转查询,输出不匹配的行。例如,grep -v “test” demo.txt 将输出不包含"test"的行。 |
-n | 输出匹配的行以及行号。 |
-l | 输出匹配的行所在的文件名。 |
-c | 输出匹配的总行数。 |
-i | 不区分大小写进行匹配。 |
sort — 排序
- 它将文件中的各行按字母或数进行排序。sort命令既可以从特定的文件,也可以从stdin获取输入。
- 例: 下面的例子通过管道将 ls、grep 和 sort 命令连起来使用,过滤包含"Aug"的行,并按照文件大小排序:
$ls -l | grep "Aug" | sort +4n
-rw-rw-r-- 1 carol doc 1605 Aug 23 07:35 macros
-rw-rw-r-- 1 john doc 2488 Aug 15 10:51 intro
-rw-rw-rw- 1 john doc 8515 Aug 6 15:30 ch07
-rw-rw-rw- 1 john doc 11008 Aug 6 14:10 ch02
选项 | 说明 |
---|
-n | 按照数字大小排序,例如,10会排在2后面;-n 选项会忽略空格或 tab缩进。 |
-r | 降序排序。sort 默认是升序排序。 |
-f | 不区分大小写。 |
+x | 对第x列(从0开始)进行排序。 |
进程
ps — 查看正在运行的进程
- 例:ps 命令查看进程的运行状态,包括后台进程, -f 选项查看更多信息
$ps -f
UID PID PPID C STIME TTY TIME CMD
amrood 6738 3662 0 10:23:03 pts/6 0:00 first_one
amrood 6739 3662 0 10:22:54 pts/6 0:00 second_one
amrood 3662 3657 0 08:10:53 pts/6 0:00 -ksh
amrood 6892 3662 4 10:51:50 pts/6 0:00 ps -f
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/9fd6ff3a2a57e54090634e1538938120.png)
选项 | 说明 |
---|
-a | 显示所有用户的所有进程。 |
-x | 降序排序。sort 默认是升序排序。 |
-e | 显示无终端的进程。 |
-u | 显示更多信息,类似于 -f 选项。 |
-f | 查看进程的更多信息。 |
kill — 杀死进程
$kill -9 PID
Terminated
top — 运行进程
- 它可以动态显示正在运行的进程,还可以按照指定条件对进程进行排序
- 如下:
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/f8787aa6d8e16db7b994899f0bdf3ab7.png)
父进程和子进程
- 每个 Linux 进程会包含两个进程ID:当前进程ID(pid)和父进程ID(ppid)。
- 由用户运行的大部分命令都将 Shell 作为父进程,使用 ps -f 命令可以查看当前进程ID和父进程ID。