编写跨平台脚本的最佳方式是什么,比如 unix 中的 bash?



TL;DR:为 Windows、Mac 和 Linux 编写可移植通用自动化脚本的最佳方法是什么?

更长版本:

我使用不同的平台,并经常编写 shell 脚本来自动化事情(运行程序和其他脚本、操作文件和目录等(。

问题在于Windows上的sh/bash替代品很棘手,很复杂,通常不兼容或缺少一些本机Unix工具。cygwin吓坏了普通用户,以防我与其他人共享我的一些脚本。 我发现.bat非常有限和丑陋。而且我没有经常使用Powershell,但它对我来说看起来有点过于复杂(或者我应该再试一次?(。

在这种情况下,您会建议怎么做?您是否遇到过类似的挑战,您是如何解决的?

我建议你使用一些配置管理器作为Ansible,Puppet或Chef。因为它们的唯一目的是自动化事物,其中一些是跨平台的。谷歌我提到的每一个,脚本通常很容易编写,它们可以在所有平台上工作,但是您需要在每个平台上安装管理器本身,这可以通过 init.sh 或简单的Powershell脚本来实现。

最新更新