如果使用Windows系统内置的 PowerShell,那么,很容易发现 curl
、wget
等常用工具命令会报错,通常是选项参数错误。
这是因为,事实上此时调用的不是你以为的命令,而是某个别的命令的别名。Windows 系统内置的 PowerShell 自动创建了一些命令别名,与一些常用工具命令相同,并提供类似功能,但使用上会有一定的差异。
比如查看别名通常可以看到上述两个命令实际上是两个别名,均指向 Invoke-WebRequest
。
1 | get-alias curl |
如果想要默认调用自己安装的工具,最简单的就是把这些别名删除。
1 | remove-item alias:curl |
执行以上命令只对当前会话有效,如果希望其成为默认配置,则需要将以上命令写入 $profile
指向的配置文件中,使得在 PowerShell 启动时生效。