使用 Windows PowerShell 通过 SSH 执行远程命令 - 防止断开连接

使用 Windows PowerShell 通过 SSH 执行远程命令 - 防止断开连接

我计划通过 SSH 连接到远程 Linux 主机并使用 Windows PowerShell SSH 调用脚本。

据我了解,如果脚本在远程 Linux 节点上运行时 SSH 连接丢失(超时或连接重置),则脚本将终止。

到目前为止我已经实现了以下序列:

  1. 通过 SSH 发起与主机的连接
  2. 连接后,运行脚本
  3. 脚本回复一个唯一的锁定文件位置,即/var/tmp/job001.lock
  4. PowerShell 脚本轮询文件是否存在
  5. 脚本完成后,锁定文件将被删除
  6. 当 PowerShell 脚本无法检测到锁定文件时,它会继续

出现以下情况即视为失败:

  1. 如果多次尝试后仍无法重新连接,则操作失败。
  2. 如果远程主机上的脚本运行时间过长,那么我们将中止该操作。

这是我的第一个 PowerShell 脚本,以前是否做过类似的事情?

如果不是,上述内容是否合理,还有其他建议吗(使用屏幕是否更合理)?

相关内容