Bat大量更改文件后缀?

来源:百度知道 编辑:UC知道 时间:2024/06/01 06:38:22
我知道这是一个很简单的问题. 不过我是初学者 .什么都不懂.望各位老鸟指教...
我有一个. U盘 .我因为怕病毒感染我的exe文件.. 每次被感染都很心痛 .... 所以做了一个批处理. 改不了 说找不到路径 ?
@echo off
Echo 文件后缀批量更改.....
PAUSE
dir *.exe /s >exe属性文件.txt
ren *.exe *.bat
dir *.bat /s >2.txt
Echo 结束
pause & exit
.我U盘里面有大大小小几个文件夹. 貌似这个命令只能改根目录里面的 怎么能穿透子目录 更改我全盘的exe呢? . 还是我错了.. ? 这个命令不能这样做 ? ..还是..Ren ..把路径全部输上 ?
PAUSE还有这个 命令 怎么Y/N? .Y继续 N 退出 ...我是不是很笨啊..

首先确定感染了你的exe文件,方法是看看它的修改日期有没有变,是的话用批处理才有用.

@echo off
setlocal enabledelayedexpansion
echo 文件后缀批量更改
set /p "c=Y继续 N 退出 (默认N)"
if /i not "!c:~0,1!"=="y" exit
dir /a:-d /b /s \"*.exe">exe属性文件.txt
for /f "delims=" %%i in ('dir /a:-d /b /s \"*.exe"') do ren "%%i" "%%~dpni.bat"
dir /a:-d /b /s \"*.bat">2.txt
echo 结束
pause & exit

@echo off
Echo 文件后缀批量更改.....
set /p continue=确认更改?(Y/N,Y继续 N 退出)
if /i "%continue%"=="n" goto :eof
dir *.exe /s >exe属性文件.txt
for /r %%a in (*.exe) do ren "%%a" "%%~na".bat
dir *.bat /s >2.txt
Echo 结束
pause & exit