如何从ps -aux中提取单词

问题描述 投票:-4回答:4

当我执行命令ps -ef | grep yypasswd我收到这个输出。

testacc 25124194 2512312620   0 08:00:53  pts/0  0:00 grep yypasswd

如何从输出字“yypasswd”中使用命令提取

bash awk grep aix
4个回答
0
投票

既然不清楚你要做什么:

如果您期望以下输出:

yypasswd

然后做

ps -ef | grep yypasswd | awk '{print $8}'

如果你想要以下输出:

testacc 25124194 2512312620   0 08:00:53  pts/0  0:00

然后做

ps -ef | grep yypasswd |  awk '{print $1, $2, $3, $4, $5, $6 ,$7}'

希望有所帮助。


0
投票
ps -ef | grep -o yypasswd

从男人grep:

-o, - only-matching仅打印匹配行的匹配(非空)部分,每个此类部分位于单独的输出行上。

请注意,您发布的ps行是您运行的grep的实际过程。要排除这个,您可以这样做:

ps -ef | grep -v grep | grep -o yypasswd

搜索进程名称的另一种方法是使用pgrep:

pgrep -f yypasswd

pgrep将为您提供匹配过程的PID


-1
投票

使用:

ps -ef | grep yypasswd | awk '{print $8}'

或使用pgrep

pgrep -l yypasswd | awk '{print $2}'

-2
投票

ps -ef | grep yypasswd | awk '/yypasswd/{print $NF;}'
© www.soinside.com 2019 - 2024. All rights reserved.