相关疑难解决方法(0)

如何防止“grep”出现在 ps 结果中?

当我搜索一些不存在的进程时,例如

$ ps aux | grep fnord                          
wayne    15745  0.0  0.0  13580   928 pts/6    S+   03:58   0:00 grep fnord
Run Code Online (Sandbox Code Playgroud)

显然我不关心 grep - 这和搜索ps过程一样有意义!

如何防止 grep 出现在结果中?

grep ps

365
推荐指数
8
解决办法
21万
查看次数

您最喜欢的命令行功能或技巧是什么?

分享您的 Unix/Linux 命令行功能和技巧。如果可能的话,尽量保持它的外壳/发行版不可知。有兴趣查看别名、单行、键盘快捷键、小 shell 脚本等。

command-line shell

93
推荐指数
27
解决办法
5万
查看次数

获取一个以自身为后台的 ssh 进程的 pid

所以我想调用两个后台ssh进程:

ssh -D localhost:8087 -fN aws-gateway-vpc1
ssh -D localhost:8088 -fN aws-gateway-vpc2
Run Code Online (Sandbox Code Playgroud)

这些网关没有让我设置authorized_keys 文件的好处,因此必须提示我输入交互式密码。这就是为什么我使用-f标志而不是 shell 的原因&,它只会在我交互式身份验证后才将进程后台运行。

在这种情况下,我似乎无法使用$!bash 变量来获取最近 [self] 后台进程的 pid。

如果被中断,我还有什么其他选择可以找到正确的 pid 以便稍后杀死?

shell-script background-process

13
推荐指数
2
解决办法
2万
查看次数

这个测试表达式 [] 是什么意思?

我见过有人使用命令:

ps -ef | grep [h]ttpd

和输出是:

阿帕奇 25125 31006 0 21:54 ? 00:00:00 /usr/sbin/httpd
阿帕奇 26869 31006 0 22:04 ? 00:00:00 /usr/sbin/httpd
阿帕奇 27349 31006 0 22:07 ? 00:00:00 /usr/sbin/httpd
阿帕奇 27696 31006 0 22:09 ? 00:00:00 /usr/sbin/httpd
阿帕奇 28534 31006 0 22:14 ? 00:00:00 /usr/sbin/httpd
根 31006 1 0 16:16 ? 00:00:00 /usr/sbin/httpd
阿帕奇 31011 31006 0 16:16 ? 00:00:00 /usr/sbin/httpd

字母“h”周围的2个括号在哪里grep做什么?

grep ps regular-expression

6
推荐指数
1
解决办法
563
查看次数