添加可执行程序到 Path 中
Contents
将一个程序加入到环境 Path 中,通常做法是将程序文件所在目录附加到系统或者用户的 Path 变量中,这样我们在任何路径下的命令行中,都可以调用该程序工作。大部分应用程序安装过程中的做法也是如此。
但是这样会将目录中的所有文件暴露到 Path 中,其中大部分是我们不需要用到的。这样做也增加了潜在 DLL Hell 隐患,比如同名不同版本 DLL 暴露到 Path 中低版本覆盖了高版本导致程序运行时异常。
最好的做法是,只将我们需要用到的 exe 文件加入到 Path 中,Windows 上也的确有这样的解决方法。
以 vim 为例。我们新建一个 vim.bat
文件,编辑文件加入以下代码:
|
|
将该文件保存到一个目录中,然后再将该目录加入到用户或系统 Path 变量中。这样,这个 vim.bat
就暴露到 Path 中,可以在命令行中随时调用了,调用名为 vim
,即 .bat
文件的文件名。
@
表示禁止调用的回显,""
引号包含目标程序的完整路径(这样路径中允许有空白符),%*
表示将传递给 .bat
文件的参数原封不动的传递给目标程序。
我们可以在此目录下新建其他 bat
文件,来向 Path 中加入各种所需的程序(同时也可以自定义名称)。
PS: 其实如果打开 Ruby 的安装目录,我们就会发现,irb 和 gem 都使用了这种方法。