将pidof限制为自己的流程

时间:2015-10-26 15:09:19

标签: bash process pid

在bash中,

pidof unison

会列出我所有用户的统一流程。但是我只对在我的uid下开始的实例感兴趣。

我怎样才能做到这一点?

我想做什么: 我定期使用unison在多台计算机上同步多个帐户。但是,如果当前用户已手动启动unison,我希望同步不启动。

2 个答案:

答案 0 :(得分:6)

您可以改为使用pgrep,例如

pgrep -u <userid> unison

将返回具有给定用户的euid的协同进程的pid列表。

答案 1 :(得分:1)

您可以像这样解析ps输出:

ps -ef | grep unison | grep -v grep | grep "${USER}" | awk '{print $2}'