gpt4 book ai didi

linux - 与 ssh 一起使用时看不到 nohup 命令的输出

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:26:01 26 4
gpt4 key购买 nike

我正在尝试在不同的服务器上运行一个 jar。因此,在我当前的脚本中,我在该服务器上执行 ssh,然后使用 nohup 运行 jar。但是,没有在新服务器上创建 nohup.out。所以,我无法捕捉到错误。

如果我手动登录到该服务器,然后启动 jar,则会创建 nohup.out。有人可以帮忙吗?

下面是我在脚本中编写的命令:

sshpass -p $node_pwd ssh -n root@$node "sh -c 'cd mydir;nohup java -jar NodeStarter.jar config.properties > /dev/null 2>&1 &'"

这里,node 是我要登录的服务器。node_pwd 是包含该服务器密码的变量。

最佳答案

nohup java -jar blah.jar > /dev/null 2>&1 

在此示例中,您将输出从 stderr 重定向到 stdout,但是您已经将输出从 stdout 重定向到/dev/null。

结果是您将 stdout 和 stderr 通过管道传输到/dev/null

如果尚未重定向,输出只会转到 nohup.out。

从 shell 运行命令时,您可能没有使用相同的重定向参数。

关于linux - 与 ssh 一起使用时看不到 nohup 命令的输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34946464/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com