Mintty(Cygwin)快速定位目录的问题
- 0次
- 2021-07-27 03:55:31
- idczone
目的是实现Windows右键菜单“在此处打开Cygwin”。
网上搜到的都是使用cygwin bash启动,如下:
%Cygwin%\bin\bash -login -c "cd '%1'; exec bash -rcfile ~/.bashrc"
我尝试从Mintty(%Cygwin%\bin\mintty)启动,但没成功,试了半天,得到了一个买一送一的结果:
%Cygwin%\bin\bash -login -c "cd '%1'; mintty"
这显然不是我要的,因为多了一个多余的bash窗口。
请问有没有办法直接从mintty.exe启动并定位到指定目录,谢谢了。
P.S.找不到更合适的节点了……
我的方法:
cygwin-here.bat:
off
set _T=%cd%
set _V=%1
E:
chdir E:\cygwin\bin
bash --login -i
~/.bash_profile:
export _T=${_T//\\//}
if [[ $_T == "" ]]; then
export _T=~
fi
cd "$_T"
export _V=${_V//\\//}
if [[ $_V != "" ]]; then
vim "$_V"
fi
思路是传递个环境变量,顺便实现了传递给 vim 方便编辑。
借助 Listary 在当前目录运行 bat 的手段。
注意一下,缩进坏了…
没记错的话,可以使用chere添加
什么cmd.exe mintty console2都弱爆了,我用ConEmu这种事会随便跟别人说吗
我是这样的
D:\cygwin\bin\mintty -i /Cygwin-Terminal.ico -e /bin/bash --login -i -c "cd '%1';exec bash"
传递环境变量这个思路不错,mark。
完美解决了,thx。P.S.执行两次bash有点郁闷囧
刚刚发现这样子没法Tab键补全~/.ssh/config和/etc/hosts中主机名;
默认情况下是可以补全的;
一般我定位到很长的路径下,除了一些麻烦的操作外,最主要的还是使用scp和sftp,而这两个正好需要到主机名配置。