lsof的非零退出代码

时间:2015-04-24 08:07:37

标签: unix lsof

我正在使用以下lsof命令:

lsof -iTCP -a -sTCP:^LISTEN -a -p <pid>

如果有一些输出,则此命令返回退出代码0但如果没有输出则退出代码为1

echo $?

任何人都可以解释为什么会这样吗?有没有办法避免它?

1 个答案:

答案 0 :(得分:3)

这是预期的行为:如果找到了某些内容,您只需0

来自man lsof

  

<强>诊断

     

错误标识为标准错误文件中的消息。

     

如果检测到任何错误,Lsof返回一(1),包括   无法找到命令名称,文件名,Internet地址   或者询问文件,登录名,NFS文件,PID,PGID或UID   列出。如果指定了-V选项,则lsof将指示搜索   它未能列出的项目。

     

如果未检测到错误,并且能够列出有关所有指定搜索参数的信息,则返回零(0)。