我需要添加条件语句来检查文件夹,以便它可以执行以下脚本。可以说脚本放在文件夹c:/temp/A
中,但我希望脚本能够执行并更改另一个目录d:/xxx/B
中文件的文件扩展名。如果目录B不存在,则抛出错误并退出。我尝试使用if else语句,但它说不允许其他语句。请帮帮我,让我知道如何做到。
@echo off
setlocal ENABLEDELAYEDEXPANSION
for %%F in (*.*_error* *.*error_*) do ( set "ext=%%~xF"
SET "ext=!ext:_error=!"
ren "%%F" "%%~nF!ext:error_=!"
)
答案 0 :(得分:1)
你可以这样做。
IF EXIST "D:\xxx\b\" (goto thescript) else goto theerror
:thescript
#then whatever you want to run here.
goto :EOF
:theerror
ECHO File does not exist
goto :EOF
答案 1 :(得分:0)
@echo off
setlocal ENABLEDELAYEDEXPANSION
PUSHD d:\xxx\B 2>nul
if errorlevel 1 (
echo required destination not found
goto :wherever
)
for %%F in (*.*_error* *.*error_*) do ( set "ext=%%~xF"
SET "ext=!ext:_error=!"
ren "%%F" "%%~nF!ext:error_=!"
)
POPD
最好使用directoryname-separators的正确字符。 /
用于切换。