emi*_*-le 6 windows cmd batch-file doskey
我通过批处理脚本 ( script1.bat )添加了一个 DOSKEY 别名,并尝试在另一个批处理脚本中调用它。它不起作用。
脚本1.bat:
set USER_SETTINGS=%DRIVE%\programme\settings.xml
DOSKEY mvn=mvn --settings %USER_SETTINGS% -X $*
Run Code Online (Sandbox Code Playgroud)
脚本2.bat:
mvn clean install
Run Code Online (Sandbox Code Playgroud)
当我mvn clean install从控制台调用时,它可以工作。调试输出即将推出。当我从同一个控制台调用script2.bat 时,没有调试输出。
任何人都可以帮忙吗?
如果您通过显示 doskey 帮助,doskey /?您会得到类似以下内容:“在 DOS 提示符下调用和编辑命令,并创建宏”。批处理文件不是DOS 提示符:DOS KEY命令使用按下的键作为输入,例如箭头或 F7 键。
因此,下一个代码应该可以工作:
脚本2.bat:
@if (@CodeSection == @Batch) @then
@echo off
rem Use %SendKeys% to send keys to the keyboard buffer
set SendKeys=CScript //nologo //E:JScript "%~F0"
rem Send the keys with the DOSKEY macro name:
%SendKeys% "mvn clean install{ENTER}"
goto :EOF
@end
// JScript section
WshShell.SendKeys(WScript.CreateObject("WScript.Shell").Arguments(0));
Run Code Online (Sandbox Code Playgroud)
更多详细信息,请参阅使用批处理文件按键盘按键