2013-01-14 107 views
7

我的目标是一些可执行文件添加到我的路径(例如,铬),这样我就可以调用Windows CMD:如何创建可执行文件的符号链接?

> chrome 
从命令提示符

,它会运行Chrome浏览器。

我知道我可以将Chrome的包含目录添加到我的路径(set PATH=%PATH%<chrome_path_here>;),但由于我有一些我想添加的可执行文件,我宁愿创建一个新的bin目录,其中包含到实际可执行文件的符号链接,将该单个目录添加到我的PATH。

的Chrome浏览器可执行文件位于

C:\Program Files (x86)\Google\Chrome\Application\chrome.exe 

所以,我想

> mklink chrome.exe "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" 

,成功地创建了一个符号链接文件(是这么说的输出,并且在与> dir检查)。我知道我的PATH设置正确,当我运行> where chrome时发现了我的新符号链接。

但是,当我试图用我的新链接执行chrome时,没有任何反应。应该出现一个新的空窗口,但没有任何反应。命令提示符中没有错误消息或任何内容。

我在做什么错?我误解了Windows中的符号链接?这是我一直在Linux中使用的方法,但我是Windows Cmd的新手。

谢谢!

回答

5

大多数程序不会从安装位置以外的地方运行 - 这正是您尝试从符号链接运行时发生的情况。

这将是更容易创建该文件夹中CMD/BAT文件与你想匹配的名称,其将启动从位置节目:

REM chrome.cmd 
start /b cmd /c "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" %* 
+0

很酷,感谢您的信息!我将该代码放入名为'chrome.bat'的文件中,现在它可以工作 –

+4

另一种选择是快捷方式,但您需要将.lnk添加到PATHEXT变量中。 –

5

随着Windows 7我确认符号链接不工作,根据原始问题中的报道简单忽略。在他的评论

由于Harry状态,快捷键工作,对我是不是写一个单独的脚本为每一个新的命令我想CMD下,使简单和容易。

他声明您需要将.lnk添加到您的PATHEXT变量中才能执行此操作。我确认这是行得通的,而且.lnk添加到PATHEXT中,我只需输入快捷方式的名称部分即可运行该命令。例如,如果我的快捷方式被命名为“sublime.lnk”并且PATHEXT包含.lnk,我可以用简单的命令“sublime”执行链接。太好了!

作为一种替代方法,我发现无需修改PATHEXT,只要在我的CMD提示符处键入快捷方式的全名(包括.lnk)即可。例如,我在%HOMEPATH%/ bin下创建了一个名为“sublime.lnk”的快捷方式,指向“C:\ Program Files \ Sublime Text 2 \ sublime_text.exe”。

现在将%HOMEPATH%\ bin放入我的%PATH%中,我可以通过命令“sublime.lnk”升华。

以上任何一种都是我知道通过CMD提示从Windows文件系统访问各种命令的最佳方式。尽管我不是Windows专家,并且欢迎为这个问题提供更好或更标准化的解决方案。


PS:我刚刚发现,你需要确保硬盘的方式“开始的:”你以这种方式使用任何快捷方式的属性被削除,或者你的程序将无法在目录中开始你从中调用快捷方式。


P.P.S:在一个相关的说明,我发现了如何在你的CMD会话记录的目录中运行Windows资源管理器(或其替代):start .

相关问题