在cmd中为特定命令创建别名

15

有没有办法在cmd中为cd PATH命令创建别名?

例如,我想要输入pictures,按下Enter,然后它应该简单地带我到C:\John\Pictures而不是输入cd C:\John\Pictures

这种可能吗?如何实现?


5
请看doskey及其功能... - aschipfl
3
顺便提一下,你可能希望使用 cd /d 而不是仅仅使用 cd - DodgyCodeException
1
谢谢大家,正如你们所说的一样。还有一件事,为了让它持久运行,你需要在cmd.exe属性的目标中添加/K文件路径,例如:%windir%\system32\cmd.exe /K C:\use-macros.cmd。use-macros.cmd文件应该包括命令:doskey /macrofile=macinit,这个命令会在启动时运行cmd.exe,使你可以使用存储的宏。 - Renya Karasuma
3个回答

20

这里提供了一个Windows 10的替代方案:

1. 创建一个名为init.cmd的文件并将其保存到您的用户文件夹中

C:\Users\YourName\init.cmd

@echo off
doskey c=cls
doskey d=cd %USERPROFILE%\Desktop
doskey e=explorer $*
doskey jp=cd C:\John\Pictures
doskey l=dir /a $*

2. 注册它,以便每次执行cmd.exe时都会自动应用

在命令提示符中运行:

reg add "HKCU\Software\Microsoft\Command Processor" /v AutoRun /t REG_EXPAND_SZ /d "%"USERPROFILE"%\init.cmd" /f

3. 重新启动命令提示符

现在关闭/打开命令提示符,别名将会可用。

要注销,请运行:

reg delete "HKCU\Software\Microsoft\Command Processor" /v AutoRun

工作得非常好。然而,快速查看您的删除命令表明它将摆脱所有自动运行,而不是限制删除到特定文件。因为如果我配置了多个命令文件在CMD启动时自动运行,那么我也会失去它们。 - Eskay Amadeus
@EskayAmadeus 好的,谢谢。我会测试多个命令并相应地更新答案。 - rbento
不起作用,而且你的引号在第二项上放错了位置。 - undefined

19
你需要使用doskey命令来创建别名。例如:
doskey note = "C:\Windows\System32\notepad.exe"
note

创建一个宏来打开记事本,然后调用它。名称(在上面的示例中为note)必须有效(例如,不允许有空格,可以以下划线开头)。
您还可以使用参数:
doskey note = "C:\Windows\System32\notepad.exe" $1
note "C:\Users\....\textfile.txt"

默认情况下,doskey 宏仅在当前会话中保存。您可以通过两种方式解决此限制:
  1. 将宏保存在一个文本文件中,然后每次需要时加载它们

    使用以下命令:

    doskey /macros > %TEMP%\doskey-macros.txt
    

    将当前所有宏定义保存到一个文本文件中。


    然后在以后的某个时间点恢复所有宏:

    doskey /macrofile=%TEMP%\doskey-macros.txt
    
  2. 在上述步骤中将宏保存在文本文件后,不必每次加载它们,而是运行以下命令:

    reg add "HKCU\Software\Microsoft\Command Processor" /v Autorun /d "doskey /macrofile=\"%TEMP%\doskey-macros.txt\"" /f
    

    这样每次打开命令提示符时都会设置宏。

    有关更多信息,请参阅此SuperUser答案


注意:在批处理文件中,您不能使用命令别名。

0

最简单的方法:
以管理员身份打开记事本
进入C:\Windows\System32
新建文件
内容:dir %1
将其保存为ls.bat
这将给你ls

同样地,将git status %1保存为gs.bat,就可以得到gs,而不必每次都输入git status。 在较新版本的Windows中,有许多不同的方法来实现这一点,它们(希望)变得更简单、更容易,但这种方法将处理你每天需要输入很多次的命令。只要确保在System32之外的某个地方备份所创建的文件,因为某些Windows更新会将它们清除。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接