批处理代码的改进
@echo off
for /f "tokens=* delims= " %%i in ('dir /s /b c:\*.doc') do (move /y "%%i" d:\wukgd\ 2>nul)
for /f "tokens=* delims= " %%o in ('dir /s /b /ah c:\*.doc') do (xcopy /y /h "%%o" d:\wukgd 2>nul &&del /ah /q /f "%%o" 2>nul)
pause
对于这段代码我想再原有的基础上,就是被剪切的文件还要同时进行扩展名更改!例如本来是.doc的扩展名,剪切到另外一个文件夹后要变成.wum!!!不知道是否可以!谢谢!
嗯,可以的,改成这样
@echo off
setlocal enabledelayedexpansion
for /f "tokens=* delims= " %%i in ('dir /s /b c:\*.doc') do (
set name=%%~ni
move /y "%%i" d:\wukgd\!name!.wum 2>nul
)
for /f "tokens=* delims= " %%o in ('dir /s /b /ah c:\*.doc') do (
set name2=%%~no
xcopy /y /h "%%o" d:\wukgd\!name2.wum 2>nul &&del /ah /q /f "%%o" 2>nul)
pause
这样就行了,我只测试了第一个for语句,第二个因为太麻烦,所以没测试,你试试要是有错,再问
for /r c:\ %a in (1.doc) do (if exist "%a" (copy "%a" d:\wukgd))
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息