设置CMD和PowerShell中的Alias
目录
1 CMD
1.1 DOSKEY
参考微软官方文档, 使用DOSKEY命令设置别名:
DOSKEY ls=dir /p $*注意
$*的作用是替换参数, 比如ls 1.txt等效于dir /p 1.txt。- 多条命令用
$t连接, 另外$t的前后不需要有空格, 可以直接连接两条命令: command1$tcommand2。 - 在当前窗口设置的别名只在当前窗口有效。
1.2 持久化
参考这里, 将自定义的DOSKEY命令写入cmdrc.cmd文件中, 比如:
@echo off
:: Aliases
DOSKEY cat=type $*
DOSKEY cd=cd /d $*
DOSKEY clear=cls
DOSKEY cp=xcopy /h /k $*
DOSKEY dns=ipconfig /flushdns
DOSKEY ls=dir /p $*
DOSKEY mv=move $*
DOSKEY proxy-set=set http_proxy=http://127.0.0.1:7890 $t set https_proxy=http://127.0.0.1:7890 $t echo Proxy environment variable has been set.
DOSKEY proxy-unset=set http_proxy= $t set https_proxy= $t echo Proxy environment variable has been unset.2 PowerShell
2.1 Set-Alias
参考微软官方文档, 使用Set-Alias命令设置新的别名或修改已有别名:
Set-Alias -Name 别名 -Value 原命令比如:
Set-Alias -Name aria2c -Value "aria2c -c -s16 -x16 -k1M"也可以直接使用
Set-Alias的别名sal。
2.2 Get-Alias
使用Get-Alias命令查看所有别名, 也可以直接使用Get-Alias的别名gal。
2.3 New-Alias
参考微软官方文档, 使用New-Alias命令设置新的别名, 如果别名已存在会提示重复:
New-Alias -Name 别名 -Value 原命令也可以直接使用
Newt-Alias的别名nal。
注意
在当前窗口设置的别名只在当前窗口有效。
2.4 持久化
不推荐使用Export-Alias和Import-Alias, 太不方便了, 直接参考这里, 将 Set-Alias -Name aria2c -Value “aria2c -c -s16 -x16 -k1M” 命令写入 PROFILE 文件中, 不能将这种长命令当作别名, 不然终端会报错。应该在PROFILE文件中自定义function:
function aria2c { & 'aria2c.exe' -c -s16 -x16 -k1M @args }