在cmd中使用doskey来实现alias别名功能

        作为一枚网络工程师,经常就是面对一堆黑框框,也是就是终端。不同操作系统、不同厂家的目录,功能相同但是键入的命令又大不相同,这些差异化容易让脑子混乱。比如华为、思科、H3C、锐捷的设备,命令都有不同,不过因为系统功能基本上固定的,也没有什么操作空间了,直接记忆即可。
        我经常使用Windows的cmd然后ssh连接我的Linux服务器,面对同一个终端,命令敲迷糊了也不知道自己在cmd中还是在ssh后的shell中,cmd的命令也经常和shell搞混,经常在cmd下键入ifconfig在想想就觉得好笑哈哈哈。
0
        要是Windows下有类似于Linux中alias命令用于定义别名就好,问了一下度娘,的确可行。
doskey命令可以编辑命令行并创建宏。
doskey的语法也和alias很相似。
doskey 别名=对应命令 $*
比如
doskey ifconfig=ipconfig $*
doskey traceroute=tracert $*
doskey tracepath=pathping $*
  • 其中$*代表后面可以续接参数,比如ipconfig后要接-all之类的参数。
  • 但是doskey只在本次命令行中生效。如果想要在cmd持续生效,可以先将所需的别名保存一份bat。以我目前使用的alias.bat为例,这里我主要对我目前使用容易歧义的命令来定义别名,ls、ll、cat、rm、mkdir、traceroute、tracepath、ifconfig等。

alias.bat

@echo off
echo alittlemc
doskey ls=dir /b $*
doskey ll=dir /ONE $*
doskey cat=type $*
doskey rm=del $*
doskey mv=move $*
doskey cd=cd /d $*
doskey pwd=cd
doskey mkdir=md $*
doskey lt=dir /OD $*
doskey traceroute=tracert $*
doskey tracepath=pathping $*
doskey ifconfig=ipconfig $*
doskey clear=cls
doskey shell=PowerShell $*
doskey history=doskey  /history
doskey alias=doskey /macros
echo 别名完成载入,键入alias查看

        win+r键入Registry打开注册表,打开位置计算机\HKEY_CURRENT_USER\Software\Microsoft\Command Processor,位置新建字符串AutoRun,数据就是之前编辑的bat文件的路径,之后在cmd运行之前都会运行此bat文件了。

0
 
完成配置后每一次进入cmd(在cmd中敲cmd也可以更新),别名就生效了,bat也可以自己定义需要的命令
  • 键入history可以查看历史记录(仅限当前会话)
  • 键入alias查看生效的别名。
0
 
 
其他可能发生的问题->
如果终端有中文乱码,在记事本另存为你cmd对应编码就可以啦,比如我这里是UTF-8。
0
 
0
 
 
posted @ 2022-08-26 12:32  alittlemc  阅读(249)  评论(0编辑  收藏  举报