我需要依次执行node
和firefox
。在我手动关闭firefox之前,节点进程需要保留在后台。
我已经尝试过以下命令:
node & nodePID=$! && firefox && pkill $nodePID
但是$nodePID
似乎返回Firefox的pid而不是node。我该如何解决?
请注意,我不能只是pkill node
,因为我可能同时运行不同的节点进程。
答案 0 :(得分:1)
考虑使用kill $nodePID
代替pkill ...
。
此外,您也不想将命令与'&&'链接在一起。例如,如果firefox无法启动,您可能仍希望清理节点进程。分配(nodePID = ...)将永远不会失败。
node &
nodePID=$!
firefox
kill $nodePID