Cygwin在打开在当前目录
前段时间捣鼓Linux, 有时切换到windows时,也习惯了linux命令,于是就装了cygwin,
在win7上按住shift时右键一个“Open Command window here", 为了方便,就想在这里添加一个Open Cygwin的菜单,
不过添加注册表菜单 后还是发现cygwin启动后打开的时home目录,后来发现cygwin启动时加了login参数就会进入home目录,试了几种办法,无果
今天 在环境变量里加了个HOME发现,cygwin的home也被改了,想到既然cygwin可以读取系统变量,把这样可以把启动的目录 保存在系统变量中,然后
cd $T就可以打开启动目录 了,这样好歹也比以前方便点 ,于是就开始动手了,后来发现可以直接用shell脚本 来执行cd,于是完整的打开当前目录就搞定了
下面是我的注册表(不想按shift的可以去年extended那行)
1 Windows Registry Editor Version 5.00
2
3 [HKEY_CLASSES_ROOT\Directory\Background\shell\cygwin]
4 @="Open &Cygwin"
5 "Extended"=""
6
7 [HKEY_CLASSES_ROOT\Directory\Background\shell\cygwin\command]
8 @="C:\\cygwin\\Cygwin.bat %V"
9
2
3 [HKEY_CLASSES_ROOT\Directory\Background\shell\cygwin]
4 @="Open &Cygwin"
5 "Extended"=""
6
7 [HKEY_CLASSES_ROOT\Directory\Background\shell\cygwin\command]
8 @="C:\\cygwin\\Cygwin.bat %V"
9
修改Cygwin.bat如下:
1 @echo off
2 set _T=%*
3 C:
4 chdir C:\cygwin\bin
5
6 bash --login -i
2 set _T=%*
3 C:
4 chdir C:\cygwin\bin
5
6 bash --login -i
然后修改cygwin下.bash_profile执行cd命令
43
44 export _T=${_T//\\//} # replace backslash to fowardslash
45 if [[ $_T == "" ]]; then
46 export _T="c:/Users/Administrator"
47 fi
48 cd "$_T"
44 export _T=${_T//\\//} # replace backslash to fowardslash
45 if [[ $_T == "" ]]; then
46 export _T="c:/Users/Administrator"
47 fi
48 cd "$_T"
这样右键菜单里就多了个Open Cygwin了,很爽啊,抛弃难用的cmd吧
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· .NET周刊【3月第1期 2025-03-02】
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器