简短回答:
最简单的方法是安装git for windows (git bash) 并使用 shebang 行。
#!/usr/bin/env python||anyothercommand
它是我在任何计算机上安装的第一件事,因为谁不想要 bash 而我们都使用 git 对吗?
更多信息:
与 Cygwin 不同,git bash 使用您的本机 Windows 应用程序并允许您使用 bash 脚本而无需任何配置。
它会自动将任何带有 shebang 行的文件视为可执行文件,如果它在你的路径中,它会以与 Linux 上的 bash 相同的方式运行该命令。它也只使用 windows ENV 变量,因此您添加到从 Powershell 或 cmd 工作的路径中的任何内容也适用于 git bash。
您可以通过点击开始在 Windows 中编辑环境变量,并且键入env
应该是第一个选项。只需编辑您的用户路径变量(或所有用户的全局变量)并添加您希望在命令行中可用的任何应用程序。
还为您安装 git 并将其与 Windows 凭据管理器连接起来,让您可以非常轻松地登录到启用 2fa 的 svn 服务(如 GitHub 到 bitbucket),因此您不必生成令牌。
还带有右键菜单,可以在任何位置打开 bash,甚至是仅使用 git 的 GUI。
在安装过程中,我建议您告诉它按原样签出并以 Unix 行结尾提交,以便对您的 Linux 和 macOS 伙伴友好。我还推荐了许多其他 git 配置,但这是另一个主题。
另一种选择:
安装 WSL(1 not 2) 更好,但需要一些配置。(更改默认驱动器安装路径手动连接凭证管理器等可以询问我所有这些,如果你想要有很多调整,我建议在 Windows 中运行 Linux。)
更巧妙地使用 WSL 意味着您可以将所有命令行应用程序的 Linux 版本与 Windows 应用程序分开。
如果您愿意,它仍然可以运行本机 Windows exe 文件,但如果安装了 Linux 二进制文件,它将优先。
要设置 WSL,请在 power shell 中以管理员身份运行此命令:
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
*需要重启
然后在 Microsoft 应用商店中搜索 Linux 并选择一个发行版。(我推荐 Ubuntu 18LTS)
PS - 你也可以在 git bash 中运行 WSL 哦,如果你碰巧使用 PHP,windows composer.exe 也会使用 shebang 行来运行 WSL。