当我执行命令ps -ef | grep yypasswd我收到这个输出。
testacc 25124194 2512312620 0 08:00:53 pts/0 0:00 grep yypasswd
如何从输出字“yypasswd”中使用命令提取
既然不清楚你要做什么:
如果您期望以下输出:
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}'
希望有所帮助。
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
使用:
ps -ef | grep yypasswd | awk '{print $8}'
或使用pgrep
pgrep -l yypasswd | awk '{print $2}'
解
ps -ef | grep yypasswd | awk '/yypasswd/{print $NF;}'