我使用的是centOS 7,我试图用#34; fuser"来检查使用端口X / tcp的进程的pid是什么?命令,通过bash脚本,如下:
some_pid=$(fuser X/tcp) > /dev/null
another_pid=$(fuser Y/tcp) > /dev/null
...
if [[ -z "$some_pid" ]]; then ...
虽然我不想在控制台上打印任何内容,但结果如下:
X/tcp:
Y/tcp:
...
当我尝试使用-s运行热熔器时,if statment返回false,因为热熔器的结果由于某种原因是空的。
如何避免不必要的打印? 为什么当我在静音模式下运行热熔器时它返回空?
答案 0 :(得分:1)
在fuser
手册页中,您可以看到
fuser仅将PID输出到stdout,其他所有内容都发送到stderr。
那就是你需要摆脱stderr
输出。
some_pid=$( fuser X/tcp 2> /dev/null )