有人能告诉我如何在Windows批处理脚本中执行以下操作吗?(*。bat):
仅在文件夹不存在时才创建该文件夹
更详细地说,我想在C:\驱动器上创建一个名为VTS的文件夹,但前提是该文件夹还不存在。如果该文件夹已经存在并且批处理已经执行,我不想覆盖该文件夹的内容。
有人能告诉我如何在Windows批处理脚本中执行以下操作吗?(*。bat):
仅在文件夹不存在时才创建该文件夹
更详细地说,我想在C:\驱动器上创建一个名为VTS的文件夹,但前提是该文件夹还不存在。如果该文件夹已经存在并且批处理已经执行,我不想覆盖该文件夹的内容。
当前回答
mkdir C:\VTS 2> NUL
创建一个名为VTS的文件夹,并输出一个子目录或文件TEST已经存在到NUL。
or
(C:&(mkdir "C:\VTS" 2> NUL))&
修改盘符为C:, mkdir, output error为NUL,执行下一个命令。
其他回答
你需要创建一个文件夹,如果它不存在?这里有一个如何做的例子。
首先,我通过输入以下代码检查文件夹是否已经存在:
if not exist "FOLDERPATH" (
mkdir "FOLDERPATH"
)
如果我运行代码。如果文件夹已经存在,它将什么都不做。如果文件夹已经存在,我们会这样做:
if exist "FOLDERPATH" (
rmdir /s /q "FOLDERPATH"
mkdir "FOLDERPATH"
)
现在如果我运行代码,它将重新创建文件夹,如果它已经存在。这是示例代码:
@echo off
cls
if not exist "C:\ExamplePath\" (
echo Creating Folder...
mkdir "C:\ExamplePath\"
pause
)
if exist "C:\ExamplePath\" (
echo Re-Creating Folder...
rmdir /s /q "C:\ExamplePath"
pause
)
现在if exist部分是可选的。如果文件夹已经存在,你可以跳转到一个标签,像这样:
if exist "FOLDERPATH" (
goto :ExampleLabel
:ExampleLabel
echo Hi.
pause
)
希望这能帮助你解决问题。
就我个人而言,我会这样做:
if not exist "C:\YourFolderPathHere\" (
mkdir C:\YourFolderPathHere\
) else (
echo Folder already exists!
)
让我们来分析一下:
如果不存在"C:\YourFolderPathHere\":这将检查文件夹。路径后面的反斜杠(\)非常重要,否则它将查找文件而不是文件夹。 mkdir C:\YourFolderPathHere\:如果上述语句为真,则创建目录。 echo文件夹已经存在!:打印到控制台,表明它已经存在。
下面是相同的代码,但是带有注释:
::Does the folder exist?
if not exist "C:\YourFolderPathHere\" (
::No, make it.
mkdir C:\YourFolderPathHere\
) else (
::Yes, don't make it, and print text.
echo Folder already exists!
)
单行版: 如果不存在“C:\YourFolderPathHere\”mkdir C:\YourFolderPathHere\
不过还没有测试过,所以不要引用我的话。
我为我的脚本创建了这个,我在我的工作中使用的eyebeam。
:CREATES A CHECK VARIABLE
set lookup=0
:CHECKS IF THE FOLDER ALREADY EXIST"
IF EXIST "%UserProfile%\AppData\Local\CounterPath\RegNow Enhanced\default_user\" (set lookup=1)
:IF CHECK is still 0 which means does not exist. It creates the folder
IF %lookup%==0 START "" mkdir "%UserProfile%\AppData\Local\CounterPath\RegNow Enhanced\default_user\"
mkdir C:\VTS 2> NUL
创建一个名为VTS的文件夹,并输出一个子目录或文件TEST已经存在到NUL。
or
(C:&(mkdir "C:\VTS" 2> NUL))&
修改盘符为C:, mkdir, output error为NUL,执行下一个命令。
这应该对你有用:
IF NOT EXIST "\path\to\your\folder" md \path\to\your\folder
然而,还有另一种方法,但它可能不是100%有用:
md \path\to\your\folder >NUL 2>NUL
该命令创建文件夹,但如果文件夹存在,则不显示错误输出。我强烈建议您使用第一个。第二个是如果你和另一个有问题。