我试图使用“set - ”获取进程的pid,如下所示:
假设一个进程是使用命令java -jar someProg.jar
在shell脚本中,我可以使用这种方式获取processId:
#
pid_=$(ps -axf | grep someProg | grep -v grep)
set -- $pid_
echo $1
#
现在,我尝试通过编写命令来获取终端上的pid:
ps -axf | grep someProg | grep -v grep | set -- | echo $1
但我没有得到任何东西。
如何在终端上使用set-command获取输出pid。
由于
答案 0 :(得分:1)
怎么样?
ps -axf | grep someProg | grep -v grep | awk '{print $1}'
显示someProg
进程的PID ...
答案 1 :(得分:1)
您既不能管道set
,也不会支持它,也不能使用xargs
等工具,因为set
是内置的。
这就是你所能做的一切:
set -- $(ps -axf | grep someProg | grep -v grep) ; echo $1
顺便说一下:你也无法输入echo
。