如何创建在特定文件夹中打开Cygwin的Cygwin快捷方式?这样就不用打字了
cd /cygdrive/c/Users/Tom/Desktop/
每次我发射Cygwin。
如何创建在特定文件夹中打开Cygwin的Cygwin快捷方式?这样就不用打字了
cd /cygdrive/c/Users/Tom/Desktop/
每次我发射Cygwin。
当前回答
我也有问题与git,它曾经“窃取”我的cygwin命令-所以我需要运行 C: \ cygwin \ bin \ mintty.exe - 但是在安装chere并以管理员身份执行chere -i -t mintty -f之后(见上文),你可以简单地使用: C:\cygwin\bin\ minty .exe -e /bin/xhere /bin/bash.exe 我在Total Commander中添加了这个自定义按钮(右键单击面板> add…),它工作得非常好。
其他回答
这是我用的。它不需要修改包或注册表。适用于Windows 7。
进入“发送到”文件夹:
C:\Users\<your_user_name>\AppData\Roaming\Microsoft\Windows\SendTo
在目标字段中创建一个名为Bash Here的快捷方式:
C:\cygwin\bin\mintty.exe -i /Cygwin-Terminal.ico C:\cygwin\bin\bash.exe -l -c "cd \"$0\" ; exec bash"
在Windows资源管理器中,右键单击一个文件夹并选择发送到> Bash Here。
这里有一个相反的技巧,在当前bash目录下打开Windows资源管理器。创建这个别名:
alias winx='/cygdrive/c/Windows/explorer.exe /e,\`cygpath -w .\`'
注:cygpath为-w。以上部分用反引号括起来。
现在只要在bash提示符下输入winx,就会弹出一个Win资源管理器。
注意:如果winx引导您到文档文件夹,请尝试
alias winx='/cygdrive/c/Windows/explorer.exe /e,`cygpath -w $PWD`'
当您安装Cygwin时(或者如果您已经安装了Cygwin,请再次下载并重新开始安装以运行更新),请确保您在“shell”类别下选择了chere包。
启动Cygwin后,打开Cygwin终端(以管理员身份)并键入命令:chere -i -t mintty -s bash。
现在在Windows右键上下文菜单中应该有“Bash Prompt Here”。
(mintty是Cygwin的默认终端。如果你不选择-t选项,你的“Bash Prompt Here”将使用与Windows命令提示符相同的终端,这可以防止水平调整大小。)
对于cygwin64或没有chere的安装,您可以在注册表项中使用以下命令(假设windows由于您的路径,也假设cygwin安装目录为c:\cygwin64)
C:\cygwin64\bin\mintty.exe /bin/sh -lc 'cd "`cygpath "%V"`"; bash'
适用于Windows 7和8 注册表文件可在这里下载:http://tomkay.me/blog/Cygwin64---Open-Here-18
Windows Registry Editor Version 5.00
; Open cygwin to folder
; http://tomkay.me - Tom Kay
[HKEY_CLASSES_ROOT\Folder\shell\open_cygwin]
@="Open Cygwin Here"
[HKEY_CLASSES_ROOT\Folder\shell\open_cygwin\command]
@="C:\\cygwin64\\bin\\mintty.exe /bin/sh -lc 'cd \"`cygpath \"%V\"`\"; bash'"
[HKEY_CLASSES_ROOT\Directory\Background\shell\open_cygwin]
@="Open Cygwin Here"
[HKEY_CLASSES_ROOT\Directory\Background\shell\open_cygwin\command]
@="C:\\cygwin64\\bin\\mintty.exe /bin/sh -lc 'cd \"`cygpath \"%V\"`\"; bash'"
在使用注册表的答案中,我发现在Windows 2008 R2 SP1上,您需要将Background从路径中删除。此外,由于chere和xhere不是cygwin64的一部分,这里有一个同时适用于两者的解决方案,它结合了注册表和Send To解决方案。将'E:\cygwin64'替换为您的安装位置:
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\Directory\shell\cygwin_bash]
@="Open Cygwin Here"
[HKEY_CLASSES_ROOT\Directory\shell\cygwin_bash\command]
@="E:\\cygwin64\\bin\\mintty.exe -i /Cygwin-Terminal.ico --exec /bin/bash.exe --login -c \"cd '%1' ; exec bash -rcfile ~/.bashrc\""
我已经创建了批处理文件,并将其放到Cygwin的/bin目录中。开发此脚本的目的是允许安装/卸载注册表项,以便在Cygwin中打开选定的文件夹和驱动器。详情请参见http://with-love-from-siberia.blogspot.com/2013/12/cygwin-here.html。
更新:此解决方案与早期建议相同,但Windows注册表的所有操作都隐藏在脚本中。
执行安装命令
cyghere.bat /install
执行卸载命令
cyghere.bat /uninstall