为什么链接 fuser 命令和节点应用程序不能按顺序工作?

Why doesn't chaining fuser command and node app work in sequence?

以下命令独立运行:

fuser -k 12345/tcp 

nodemon app

但是

fuser -k 35243/tcp && nodemon app

只是 returns 第一个命令的结果 / returns 到命令行。

为什么不能链接这些命令?

(还尝试在命令之间休眠)

https://man7.org/linux/man-pages/man1/fuser.1.html

fuser returns a non-zero return code if none of the specified files is accessed or in case of a fatal error. If at least one access has been found, fuser returns zero.

&& 运算符短路并且仅在第一个命令返回零(“成功”)时才执行第二个命令。因此,如果套接字尚未被使用,则 fuser returns 非零且 nodemon app 不会被执行。

如果你想执行第二个命令而不考虑第一个命令的结果,请使用 ; 而不是 &&:

fuser -k 35243/tcp ; nodemon app

这与将它们分两行列出完全相同。