![如何创建一个快捷方式,以便在我选择的目录(尤其是 UNC)上打开 Cygwin bash shell?](https://linux22.com/image/1232514/%E5%A6%82%E4%BD%95%E5%88%9B%E5%BB%BA%E4%B8%80%E4%B8%AA%E5%BF%AB%E6%8D%B7%E6%96%B9%E5%BC%8F%EF%BC%8C%E4%BB%A5%E4%BE%BF%E5%9C%A8%E6%88%91%E9%80%89%E6%8B%A9%E7%9A%84%E7%9B%AE%E5%BD%95%EF%BC%88%E5%B0%A4%E5%85%B6%E6%98%AF%20UNC%EF%BC%89%E4%B8%8A%E6%89%93%E5%BC%80%20Cygwin%20bash%20shell%EF%BC%9F.png)
假设在 Windows XP 上安装了标准的 Cygwin,我想创建一个标准的 Explorer 快捷方式,打开一个已经在我选择的目录中打开的 bash shell。该目录是 UNC 路径。标准 cygwin.bat 不起作用,因为它调用 cmd.exe,而 cmd.exe 不喜欢 UNC 路径。理想情况下,它不会启动 cmd.exe 或任何其他 shell 来打开 bash。我曾尝试操作 .bashrc 并回忆起我在 Unix 时代的经历,但遗憾的是现在我记不清了。我尝试过的各种解决方案是几乎可以工作,但还不完全。
答案1
我还没有尝试过 UNC 路径,但我认为一般情况下必须使用正斜杠而不是反斜杠。对于常规驱动器,/cygdrive/c
例如,您可以使用它来访问 C 驱动器。
在批处理文件中,要打开 root 权限的 shell,C:
可以使用:
c:\cygwin\bin\bash.exe --login -i -c 'cd "/cygdrive/c";bash'
您也可能对。。。有兴趣chere
上下文菜单项为了在这里打开 bash:
答案2
我在注册表中添加了一个子文件夹HKEY_CLASSES_ROOT/Directory/shell
,Cygwin
并添加了键command
,其中命令的值为
cmd.exe /k "E:\PATHTOCYGWIN\bin\bash --login -i -c "cd ""%L"";bash""