![如何使用 plink 在 Windows 上在 Linux 主机上运行 bash 脚本](https://linux22.com/image/1311876/%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8%20plink%20%E5%9C%A8%20Windows%20%E4%B8%8A%E5%9C%A8%20Linux%20%E4%B8%BB%E6%9C%BA%E4%B8%8A%E8%BF%90%E8%A1%8C%20bash%20%E8%84%9A%E6%9C%AC.png)
我正在尝试在 Windows 上运行一个简单的 bat 文件,该文件将在远程 Linux 机器上运行 bash 脚本。bash 脚本位于 Linux 机器上。
例如:我尝试在 Windows 上的批处理文件中运行此命令:
plink.exe -pw <password> root@<ip> bash -c "/root/script.sh"
结果:
- 从 Windows 运行时 cmd 永远卡住
- 当从 Linux 机器运行特定脚本(
/root/script.sh
)时,它运行良好。 - 该脚本包含 ruby 代码,我正在使用 RVM
答案1
如果运行以下命令,您会看到什么?这将逐步执行脚本。
plink.exe -pw <password> root@<ip> bash -x "/root/script.sh"
另外,请注意远程运行时设置的环境是不同的。您必须确保所有内容都已正确设置,例如 PATH。因此,您的脚本必须说 /usr/bin/ruby 而不是 ruby,或者在 PATH 中添加 /usr/bin 等。
或者获取一个可以设置它们的文件。