我有一个工作目录,例如; \ ABC123 \ WIP \ ABC_0123456789 * .XML。 在一个过程中,ABC_0123456789的内容在当前工作目录之外是ZIPPED;所以在WIP文件夹中的这个例子中;
目录现在看起来像;
是否可以使用命令获取文件夹名称" ABC_0123456789" (或当前工作目录)和"如果存在"删除ZIP" ABC_0123456789.zip"在根目录(上面的目录)?
答案 0 :(得分:0)
编辑:
根据您的评论,您需要的是:
del "%CD%.zip" 2> nul
如果zip文件存在并且与当前工作目录同名,它将删除它。如果它不存在,2> nul
将重定向错误消息,您将看不到它。您仍然可以使用ERRORLEVEL来检查zip是否真的存在(如果存在则为0,如果不存在则为1)。
如果您首先检查是否存在,则可以使用
IF EXIST "%CD%.zip" del "%CD%.zip"
这只会在zip存在的情况下执行删除
EDIT2 :@LotPings让我注意到我忘记添加的内容。当变量表示路径的一部分时,用"
包围它是非常重要的,以防它可能包含空格。
答案 1 :(得分:0)
在WIP \子文件夹内的命令行中:
for %A in ("%CD%") do If exist "..\%~nA.zip" Del "..\%~nA.zip"
在批处理中,您必须将for var的百分号加倍:
for %%A in ("%CD%") do If exist "..\%%~nA.zip" Del "..\%%~nA.zip"
root指的是驱动器的根\
,你的意思是父目录
修改如果路径中有空格,请更好地引用("%CD%")