如何使用gcloud-ssh在后台运行进程



我必须对linux虚拟机进行gcp,这样我就可以从一个实例到另一个实例进行ssh操作,并使用下面的命令运行进程,这很好,但当我使用选项在后台运行进程时,该命令不会显示任何结果。

  1. gcloud计算ssh-zone{zone Name}{instance Name}--'cd/app/bin&amp/clearcache&nohup/startWeblogicAdmin>>admin.log'====这很好
  2. gcloud计算ssh-zone{zone Name}{instance Name}--'cd/app/bin&amp/clearcache&nohup/startWeblogicAdmin>>admin.log&'===这不会被执行

第二个命令有问题。

gcloud compute ssh -zone {Zone-Name} {instance-name} -- 'cd /app/bin && ./clearcache && nohup ./startWeblogicAdmin >> admin.log &'

请注意命令末尾的&。以cd开头的引号之间的命令从左到右执行。最后一个命令nohup ./startWeblogicAdmin >> admin.log &是放置&的位置,这意味着在后台运行该命令。这不会产生预期效果。

此外,nohup需要在前台运行,以便在没有终端的情况下在后台设置进程。添加&会中断此程序。

您需要将符号和&放在命令的末尾,这样整个SSH将在后台运行,而不会影响发送的命令。SSH命令也会退出,所以如果你想让命令继续运行,你应该使用nohup

nohup gcloud compute ssh --zone=ZONE INSTANCE_NAME -- 'cd /app/bin && ./clearcache && nohup ./startWeblogicAdmin >> admin.log' &

最新更新