bat中的变量问题

批处理新手看到代码for/rE:\B%%ain(*)do(setfile=%%asetfile2=!file:E:\B\=!ifnotexist"D:\A\!file2!... 批处理新手
看到代码
for /r E:\B %%a in (*) do (set file=%%aset file2=!file:E:\B\=!if not exist "D:\A\!file2!" del /f/q "!file!")
不知道为什么用del /f/q "!file!"
不知道!file:E:\B\=!代表的是什么意思
求解答,谢谢
展开
 我来答
albumin
2014-01-19 · TA获得超过1.2万个赞
知道大有可为答主
回答量:4889
采纳率:87%
帮助的人:2394万
展开全部
!file:E:\B\=!
这个意思是将file变量中的子字符串E:\B\去掉,在此代码中去掉子字符串的结果被赋值给了file2变量
del /f /q "!file!"表示强制删除!file!代表的文件,并且不要求用户确认
这个批处理的作用是查找E:\B目录及其子目录下所有文件,如果在D:\A中同样的位置不存在名字一样的文件,就把这个文件删除
更多追问追答
追问

但是这个程序运行时出现了一个问题(刚才发错了

是这个问题

追答
在那看到的代码,不会就这一句吧
你的电脑E盘有B这个文件夹吗,D盘有A这个文件夹吗
这些删除文件的批处理不要胡乱运行
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式