我正在尝试通过DOS命令创建一个文本文件。在创建文件之前,命令会询问一个文件的名称。我看了here和here以及其他地方让我开始。
我希望代码能够在一行中运行。所以,我应该能够在Windows Start>中键入整个代码。运行框。
这就是我所拥有的:
cmd /k @ECHO OFF & SET /P filename=What File name: & copy NUL %filename%.txt & :End
然而,这会忽略我在询问时提供的文件的名称,并创建%filename%.txt。
我尝试在单词copy之前将操作符更改为|,&&和&但是这些人甚至不会问我文件名,而只是创建%filename%.txt
此外,cmd框在创建文本文件后保持打开状态。
P.S。我知道我可以在/q
之前使用/k
来回显。
我期待着你的帮助。
答案 0 :(得分:1)
这适用于此:延迟扩展用于另一个cmd进程
cmd /c @ECHO OFF & SET /P filename=What File name: & cmd /v /c copy NUL !filename!.txt & exit
命令行没有为目录定义路径,使用RUN框时,它可能会在c:\windows\system32
文件夹中创建,除非您没有该文件夹的写入权限。