缘起
转入正题,写代码的程序员,说是写代码,但是我发现自己看代码的时候要比写的时候多的多。于是搜头上notepad++ cmd,silver searcher不离手了。(其实更喜欢ack,可以通过修改代码来改变它的一些配色,呵呵,但是无奈,stand alone在windows上面跑的不好,就用了silver searcher了)。
那么,问题来了,silver searcher 默认是有--group选项的,这样就非常不适合在命令行里操作。在linux中,直接bashrc就可以搞定。但是在windows下呢?windows下又有两个命令行环境,一个是比较古老的cmd,另一个就是powershell。cmd是比较常用的,但是我更喜欢powershell,为什么?因为在powershell里你按tab进行补全的时候,它只会搜索PATH里的东西,不会用当前目录下的一个文件给你补全;在cmd里就有这样的苦恼。所以powershell更像linux的shell,哈哈,看来微软还是向linux学习了不少的。
那么如何才能向这两个命令行环境添加alias呢?
添加alias
cmd
还是google吧,google把我引向了我最爱的stackoverflow。
1. 创建一个.cmd 文件,
文件内容如下:
@echo off
DOSKEY ag=C:\MinGW\msys\1.0\bin\ag.exe --nogroup $*
DOSKEY ls=C:\MinGW\msys\1.0\bin\ls.exe --color
2. 进入注册表编辑器: HKEY_CURRENT_USER -> Software -> Microsoft -> Command Processor
创建一个string值的item,内容就写成上面那个文件的绝对路径。
Powershell
具体的要写的东西比较多,感觉powershell又是另一个体系,搞的挺复杂的,具体没有深入研究,主要是参考这个连接
http://www.jb51.net/article/32449.htm
上面这个连接里并没有介绍如何给你自己定义的function传入参数,那么万能的google这个时候又起作用了,可以参考这个
连接
那么我的函数就是:
function ag_internal {C:\MinGW\msys\1.0\bin\ag.exe --nogroup $args}
set-alias ag ag_internal
本文详细介绍了在Windows环境下如何通过创建.cmd文件和修改注册表来为命令行工具添加别名,以方便进行代码搜索,并且对比了不同命令行环境如cmd与powershell的特点。
&spm=1001.2101.3001.5002&articleId=25729047&d=1&t=3&u=f504cbc8dfb44d83841894c13c7c4f3c)
802

被折叠的 条评论
为什么被折叠?



