在Windows中等效的Shell脚本

问题描述 投票:0回答:2

我需要将一些.sh shell脚本转换为可以在Windows环境中运行的Windows本机脚本,而无需使用任何外部软件,如cygwin,migwin等。

我知道Windows 10有适用于Linux的Windows子系统(WSL),但它处于测试版状态并且使用它我们需要启用开发人员模式。

我的一些选项是将它们转换为批处理文件或Powershell脚本,但是我需要找到每个等效的CMD / PS命令​​,这将花费很长时间。

在Windows上运行shell脚本有什么快捷方式吗?

windows powershell windows-10 sh
2个回答
2
投票

您唯一的选择是:

  1. 正如你所注意到的那样,WSL已经不再处于测试阶段了。
  2. 安装类似CygWin的东西。
  3. 将* ix shell脚本转换为批处理,PowerShell,VBScript或JScript。如果使用PowerShell,在寻找等价物方面可能会有更好的运气。是的,这需要一些时间和研究,但任何类型的脚本翻译的成本将是一个学习曲线;即使有自动化工具,结果也会非常不理想。 PowerShell采用与其他shell明显不同的模型,与管道相关;如果你试图写入传统模型而不是按预期使用PowerShell,你会发现你的挫折程度在屋顶上。

通过最严格的定义,您对“Windows本机脚本”的唯一选择是上面的选项3;其他不是“Windows原生脚本”;它们是非Windows工具的实现,允许您针对Windows资源运行* ix shell脚本(通常是bash,而不是sh,csh,zsh等)。


0
投票

我建议使用适用于Linux的Windows子系统,因为它已经普遍可用,不再处于测试阶段。

您可以通过PowerShell安装它:

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux

安装完成后,您可以交互式执行脚本或通过bash传入,例如:

bash.exe myscript.sh

更多信息:https://docs.microsoft.com/en-us/windows/wsl/install-win10

© www.soinside.com 2019 - 2024. All rights reserved.