我想制作一个批处理文件来规避计算机上的一些 cmd 问题,但为此我需要能够接受 String 用户输入并将其作为命令运行。
基本上我想要做的是在批处理文件要求输入时输入命令,并让计算机运行该命令,类似于 python 的 os 模块(类?)
我想制作一个批处理文件来规避计算机上的一些 cmd 问题,但为此我需要能够接受 String 用户输入并将其作为命令运行。
基本上我想要做的是在批处理文件要求输入时输入命令,并让计算机运行该命令,类似于 python 的 os 模块(类?)
只需将字符串分配给一个变量,然后“执行”该变量,就好像它是一个程序一样
例如
set myvar=ECHO Hello, World!
%myvar%
使用set /p
命令提示输入。此命令还会显示一条消息。例子:
@echo off
set "command=dir"
set /p "command=type in a command: "
echo.command is: %command%
echo.press any key or ^<CTRL+C^> to abort . . .
>nul pause
%command%
在最简单的情况下,您想使用set /p
提示输入命令,将环境变量设置为结果,然后简单地自行扩展环境变量,操作系统将尝试将其作为命令执行。
SET /P COMMAND=Command:
%COMMAND%
您可以使用批处理 for 循环,这适用于我在命令提示符下,但不适用于电源外壳:
Microsoft Windows [Version 6.3.9600]
(c) 2013 Microsoft Corporation. All rights reserved.
C:\Users\Administrator>FOR /F "delims=" %i IN ('python -c "print('set wow=yep')"') DO set toexec=%i
C:\Users\Administrator>set toexec=set wow=yep
C:\Users\Administrator>%toexec%
C:\Users\Administrator>echo %wow%
yep