如何在 Windows 中运行 Shell 脚本

阅读时间图标 7分钟读


读者帮助支持 MSpoweruser。如果您通过我们的链接购买,我们可能会获得佣金。 工具提示图标

阅读我们的披露页面,了解如何帮助 MSPoweruser 维持编辑团队 查看更多

Shell 脚本文件或 SH 文件(.sh 扩展名)对于软件工程师执行各种操作(从文件处理到程序执行等)非常有用。

众所周知,这种包含一系列命令的脚本语言命令文件是通过名为 BASH 的计算机程序运行来用于 Linux 操作系统的。

与此相关,Bash shell 脚本是用 Linux 程序识别的 BASH(Bourne-Again Shell)语言编写的。

但是,在 Windows 上通过命令提示符直接使用它或 PowerShell的 终端是不可能的,因为系统不知道命令语言。 值得庆幸的是,有多种方法可以在其中运行 .sh 或 shell 脚本文件 Windows 10Windows 11.

在 Linux 中使用 shell 脚本文件比在 Windows 上更简单。在 Windows 上,您需要使用其他软件才能将 bash 脚本作为适用于 Windows 系统的批处理文件执行。

您还可以尝试将脚本 shell 文件转换为 Windows 可执行 BAT 文件,但这需要对脚本和批处理文件的命令有丰富的了解,包括将脚本文件转换为批处理文件。此选项很复杂,但在 Windows 10/11 中运行 shell 脚本有更简单的方法。以下是其中一些。

Linux的Windows子系统

第一种选择是使用适用于 Linux 或 WSL 的 Windows 子系统,这是一个兼容层,用于在 Windows 系统上本地运行 Linux 二进制可执行文件。 它适用于大多数场景,允许您在 Windows 11/10 中运行 shell 脚本。

WSL 并非自动可用,因此您必须通过 Windows 设备的开发人员设置启用它。

您可以通过转到“设置”>“更新和安全”>“针对开发人员”来执行此操作。切换到开发人员模式并选择“是”确认提示。

接下来,查找 Windows 功能(您可以使用“查找设置”搜索栏)并选择“打开或关闭 Windows 功能”选项。

这将弹出一个窗口列表,您应该在其中看到“Windows Subsystem for Linux”功能。选中该项目旁边的框,然后单击“确定”以安装它。

该过程将需要一两分钟,因为该过程将涉及搜索功能的相关文件并应用更改,但一旦该过程完成,它很快就会要求您重新启动计算机。重新启动后,BASH 应该已经在命令提示符和 PowerShell 中可用。

之后,您需要获取 Ubuntu 才能访问 Linux 文件系统,并在 Windows 上的 Linux 环境中直接运行 Linux 命令和工具以及 Bash 脚本或 .sh 文件。为此,请前往 Microsoft Store 并下载 Ubuntu,它将为您提供 Linux 发行版。

之后,打开 Ubuntu 以允许它在硬盘上进行安装并与 WSL 集成。然后会要求您创建用户名和密码以完成该过程。

您还可以使用 Power shell 命令“调用-WebRequest -Uri https://aka.ms/wsl-ubuntu-1604 -OutFile Ubuntu.appx -UseBasicParsing” 或 curl 命令 “curl.exe -L -o ubuntu-1604.appx https://aka.ms/wsl-ubuntu-1604“。 接下来,通过使用“命令”下载额外的包来更新和升级 Linux 发行版sudo apt更新&& sudo apt升级设立的区域办事处外,我们在美国也开设了办事处,以便我们为当地客户提供更多的支持。“

解决此问题后,您可以尝试在 Windows 命令提示符中运行 shell 脚本。找到系统中以文本文件形式存储的脚本文件,然后按住 Shift 键右键单击脚本文件所在文件夹内的空白处。

这将为您提供“在此处打开命令提示符”或“在此处打开 PowerShell 窗口”的选项。选择该选项,在命令提示符窗口或 PowerShell 界面中键入“bash”,然后按 Enter 键启动发行版提示符。

这将带您进入 bash shell,这意味着 Windows 环境已更改为 BASH。确认这是将出现在终端窗口中的新行。最后,您可以开始在终端窗口中输入 .sh 文件,然后按 Enter 键。

Cygwin的

Cygwin 拥有一组 GNU 和开源工具,可提供与 Windows 上的 Linux 发行版类似的功能。使用它,您可以编译 Unix 或 Linux 应用程序或程序,并在 Microsoft Windows 操作系统 (OS) 上运行它们,而这些界面类似于 Linux BASH。

Cygwin 是免费的,因此你可以从 Cygwin的官方网站. 下载并开始安装 setup-x86_64.exe 文件。 Cygwin 有两个版本:32 位和 64 位版本。 尽管如此,我们还是建议使用后者,因为“完整的 32 位 Cygwin 发行版不再可行,并且很可能由于 fork 系统调用的问题而在随机位置失败”,如其 网站.

32 位 Cygwin 仅适用于有限的场景,包括无法运行 64 位版本的 Cygwin 的情况。下载 GUI 安装程序(可以运行以下载完整的 Cygwin 安装)后,打开它并按照每个屏幕上的说明安装 Cygwin。其站点还有一个 详细文件 设置它。

准备就绪后,通过安装程序将在桌面上生成的快捷方式打开 Cygwin64 终端。 提供命令“cd C:用户/用户名/桌面” 将目录更改为存储脚本文件的位置。 之后,您可以开始执行 shell 脚本。 只需键入 SH 文件名和 .sh 扩展名(例如,sh test.sh)。

混帐

Git 是一个免费的开源版本控制系统,非常适合一群程序员一起工作或在源代码项目上进行协调。 它可以跟踪您随时间对文件所做的更改,让您可以查看谁在不同时间对文件进行了更改并将文件恢复到以前的状态。

Linux 和 macOS PC 预装了 Git 作为命令行工具,但 Git 也有适用于所有操作系统的版本,可在其上下载 官方网站. 在这种情况下,你会想要 Windows版Git。下载后,打开安装文件以开始 Git 安装。

按照安装过程中设备屏幕上显示的说明进行操作,并确保在出现窗口弹出列表确认所需的组件设置时选中“Git bash Here”选项。至于其余组件的其他选项,只需将其保留为默认选项即可。只需继续选择下一步,直到到达安装按钮。关闭安装向导并通过在计算机上搜索来打开 Git Bash。您将看到其他与 Git 相关的应用程序,但单击 上面写着“Git Bash”。

启动后,您需要使用命令“cd desktop”将目录更改为文件所在的位置。 此外,您可以转到存储 SH 文件的文件夹,然后右键单击该文件夹以选择“Git Bash Here”选项。 当出现 Git 命令终端或 Git Bash 时,就可以开始放 SH 执行命令了。 只需键入 SH 文件名和 .sh 扩展名(例如,sh test.sh)。

用户论坛

0消息