中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-09 19:41
47,811 主题排行 / 349,896 发帖 / 今日 1 篇 / 48,254 会员排行
DOS批处理 & 脚本技术(批处理室) » [求助]用批处理从文本提取文件名并删除
可打印版本  980 / 11
第1楼 fitchson 发表于 2008-09-19 13:37
新手上路 发帖 7 积分 16
[求助]用批处理从文本提取文件名并删除
我想實現在一個txt(比如a.txt)里輸入文件名(比如A8012.exe),我要在指定的一個總目錄(總目錄下還有很多文件夾及子文件夾)下(比如C:\test),調用a.txt并刪除裡面寫的A8012.EXE這個文件,該怎么寫批處理啊?


比如在a.txt里輸入了 A8012.exe 然後此文件在c:\test\test2\A8012.exe,那么我就要刪除此A8012.EXE 也有可能在c:\test\test1\下也有這個文件名,則都要刪除。請問各位大大,這個怎么寫啊?如果在a.txt输入的是一个文件夹名,则将对总目录下的同此文件夹删除。

[ Last edited by fitchson on 2008-9-19 at 01:39 PM ]
第2楼 HAT 发表于 2008-09-19 13:42
版主 发帖 5,017 积分 9,023
第3楼 HAT 发表于 2008-09-19 13:45
版主 发帖 5,017 积分 9,023
要求变的真快,又加了文件夹。
第4楼 fitchson 发表于 2008-09-19 13:51
新手上路 发帖 7 积分 16
謝謝您 HAT
謝謝 HAT
可以刪除文件,如果輸入的是一個文件夾名,要刪除此文件夾及其子文件夾該怎么辦?
另外可否記錄當前時間下來,因為我想做一個刪除的記錄,要查看什麽時候刪除了什麽文件的動作,可以嗎?再次謝謝您!

[ Last edited by fitchson on 2008-9-19 at 01:57 PM ]
第5楼 HAT 发表于 2008-09-19 14:05
版主 发帖 5,017 积分 9,023
Re 4楼
第6楼 fitchson 发表于 2008-09-19 14:08
新手上路 发帖 7 积分 16
太感謝你了,HAT!!!
第7楼 fitchson 发表于 2008-09-19 16:36
新手上路 发帖 7 积分 16
Hello HAT,好像日誌沒有寫入到a.log啊?
第8楼 HAT 发表于 2008-09-19 16:50
版主 发帖 5,017 积分 9,023
a.txt的内容是什么?路径是什么?
你的批处理内容是什么?路径是什么?
第9楼 fitchson 发表于 2008-09-19 17:19
新手上路 发帖 7 积分 16
HAT,這一句 del /q /f "%%a">>"C:\test\a.log" 2>nul 是不是把日誌記錄寫入到a.log里,但是 我執行成功了以後,a.log卻是0kb,為空
第10楼 HAT 发表于 2008-09-19 17:28
版主 发帖 5,017 积分 9,023
第11楼 fitchson 发表于 2008-09-19 18:21
新手上路 发帖 7 积分 16
HAT大哥:
還要麻煩你一下。我現在測試的文件是c:\test\2\2.txt,我在a.txt里也輸入了2.txt
執行了bat以後,a.log里記錄的日誌是如下內容及格式:
C:\test\2.txt
C:\test\2\2.txt.C:\test\2.txt
這是怎么回事啊?
第12楼 fitchson 发表于 2008-09-19 19:11
新手上路 发帖 7 积分 16
HAT大哥:分享一下,我研究的結果,呵呵:
@echo off
echo =========================================================== >> C:\test\a.log
set DATET=%date% %time%
echo 程序開始運行,時間:%DATET% >> C:\test\a.log
set /p file=<"C:\test\a.txt"
for /r "C:\test" %%a in (%file%) do (
if exist %%a (
del /q /f "%%a" 2>nul
rd /q /s "%%a" 2>nul
echo.%%a >>"C:\test\a.log"
)
)
echo 程序運行結束,時間:%DATET% >> C:\test\a.log
echo =========================================================== >> C:\test\a.log
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023