如何使用批处理在桌面上的文件夹中创建文本文件

How to create a text file inside a folder on the desktop using batch

我正在尝试获取批处理文件以在桌面上创建一个文件夹,其中包含一个文本文件。每次我尝试 运行 这行代码时,它都会给我错误 "The filename, directory name, or volume label syntax is incorrect."

echo ========================
::CREATE FILES START
cd /d C:
md Title
echo.>"C:\Users\%USERACCOUNT%\Desktop\Example\example.txt"
::CREATE FILES END
echo Done!
pause >nul

尝试使用

mkdir "C:\%USERPROFILE%\Desktop\GeoHunt2015"
echo.>"C:\%USERPROFILE%\Desktop\GeoHunt2015\Mission_Instuctions.txt"

正如您在问题的原始版本中所做的那样。

是否定义了 %USERACCOUNT%? 回声实际上是导致问题的原因吗? 尝试注释掉一些东西,直到你确定回声导致语法错误。

我能看到几件事。您正在切换到 C: 目录,然后创建 GeoHunt2015 文件夹,但随后尝试回显到桌面上的 GeoHunt2015 文件夹。

试试这个回显:

echo.>"C:\GeoHunt2015\Mission_Instructions.txt"

您的代码正在更改为驱动器 C,然后在根目录中创建 GeoHunt2015。然后您尝试将该文件回显到桌面上不存在的文件夹中,因此出现错误。

这假设您的 %userprofile% 是 "c:\users\name"

md "%USERPROFILE%\Desktop\GeoHunt2015"
echo.>"%USERPROFILE%\Desktop\GeoHunt2015\Mission_Instuctions.txt"

或者你可以 cd 到桌面

echo ========================
:: CREATE FILES START
    cd /d "%USERPROFILE%\Desktop\"
    md GeoHunt2015
    echo. >"GeoHunt2015\Mission_Instructions.txt"
:: CREATE FILES END
    echo Done!
    pause >nul