2013-12-10 33 views
2

Powershell的$配置文件非常方便添加常用命令。我如何在cmd.exe中执行相同的操作?

回答

3

对于CMD,没有与PowerShell的$profile等效。但是,可以使用AutoRun脚本完成一些定制。将新的REG_SZ(或REG_EXPAND_SZ)值AutoRun与您的脚本的路径添加到[HKCU\Software\Microsoft\Command Processor](例如,像这样:

reg add "HKCU\Software\Microsoft\Command Processor" /v AutoRun /t REG_SZ /d "C:\path\to\your\init.cmd" 

我通常使用的init.cmd这样的:

@echo off 
doskey /insert /macrofile=%USERPROFILE%\macro.def 

包含我的别名macro.def

.="%SystemRoot%\explorer.exe" /e,. 
..=cd .. 
ls=dir /d $* 
ll=dir /x $* 
+0

你也可以通过创建一个快捷方式到CMD实现类似的功能。 EXE命令行类似于:'cmd/k“C:\ path \ to \ your \ init.cmd”'。/k参数告诉CMD执行指定的命令,然后接受来自键盘的输入(而/ C告诉cmd.exe执行指定的命令,然后终止)。在答案中使用注册表mod可能更健壮,但如果您不想修改注册表,则可以选择这种方式。您也可以使用此方法设置多个CMD.EXE快捷方式,每个快捷方式都有自己的初始化脚本。 –

0

PATH环境变量将以可执行模块(包括批处理文件)的形式提供对“命令”的可见性。还有AUTOEXEC.BAT,当操作系统启动时运行,但这不是你想要的。

尽管在PowerShell中运行$ profile脚本的方式类似,但没有在cmd.exe会话中运行的“配置文件”脚本。