如何在linux上执行远程命令并更新返回值?

如何在linux上执行远程命令并更新返回值?

作为 gitlab ci 中自动化的一部分。

我正在运行 terraform 模板并创建一台 Linux 机器。

之后,我需要在远程机器上运行一些命令。我使用 ssh 远程命令运行这些命令。但最后,即使失败了,也显示为成功。

请告诉我如何设置这种环境。安装任何工具作为步骤也是可行的

答案1

要获取命令的退出代码,请将其添加echo $? 到命令中。如果值echo $?大于 0,则表示命令未成功。在 Linux 中,$?保存前一个命令的退出代码。这是了解命令是否成功的最佳方式,因此可用于为操作系统工作设计的所有系统级脚本。

假设您的命令是“ifconfig”。要获取正确状态,请运行以下命令:

if ifconfig; 
then
  echo "Command successful"
else
  echo "Command exited with non-zero status code, failed"
fi

我希望这对你有用。

相关内容