在 PATH 中用 Cygwin 的功能替换 Windows 的功能有什么缺点吗?

在 PATH 中用 Cygwin 的功能替换 Windows 的功能有什么缺点吗?

Cygwin 允许在 Windows 等操作系统上执行 shell 脚本。某些功能与 Windows Shell 的功能相冲突。

以下提示是否会对经常使用 Windows 的用户造成任何不利影响?我找不到有关此问题的任何其他信息。

Cygwin 指出:

一些 Windows 工具(例如 find.exe、link.exe 和 sort.exe)可能会与 Cygwin 版本冲突,请确保使用完整路径(/usr/bin/find)或 Cygwin bin 目录位于 PATH 中的第一位。

我相应地更改了 PATH,但我不知道是否存在任何缺点。Windows 何时使用,例如,通过 shell 命令查找?

答案1

您必须考虑得更远一些,因为 find.exe 和 sort.exe 是大多数 Windows 机器上可用的默认 Windows 工具。Windows 以外的其他程序也可能会使用它们。

在 Windows 中使用命令行工具的常见情况是安装某些程序。这可能是您手动安装的新程序或 Windows 的(自动)更新(或其他已安装的程序)。这里的问题是,很难预测会发生什么。编写良好的程序/脚本将以有意义的错误消息结束。但也可能存在依赖于这些工具的确切行为并在您更改它们时运行严重破坏的脚本。

您的路径中是否需要这些 cygwin 工具?如果您只是偶尔需要它们,您可以在需要使用它们时将它们临时添加到您的路径中:

path=C:\your_path_here;%PATH%

(编辑:新路径需要放在前面,以便 cygwin 可执行文件优先于 windows 可执行文件)

相关内容