使用 grep 和 whoami 列出当前用户不拥有的进程

Smi*_*ile 4 command-line grep ps

ps aux --sort=-%cpu | grep -v 'whoami'命令应该输出不是由有效用户启动的进程。但是,它会打印出我用户的进程以及其他用户的进程。请解释什么是错的。

ste*_*ver 7

grep -v 'whoami' 排除匹配文字字符串的行 whoami

如果要排除与whoami命令输出匹配的行,则需要将单引号替换为反引号

ps aux --sort=-%cpu | grep -vFe `whoami`
Run Code Online (Sandbox Code Playgroud)

或者使用$(...)命令替换的形式

ps aux --sort=-%cpu | grep -vFe "$(whoami)"
Run Code Online (Sandbox Code Playgroud)

或者,您可以grep通过直接否定用户选择来完全跳过:

ps -Nu `whoami` --sort=-%cpu u
Run Code Online (Sandbox Code Playgroud)