[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
我的意思是,我在帮你解决问题,请你提供足够的信息。
Do All in Command Line

TOP

回复 1楼 的帖子

dir /b 123 >>d:\123.txt
for /f %%i in (d:\123.txt) do move  ..\b\%%i ..\backup\
::然后再使用copy 命令即可
copy 123\*.* backup\


看看这段代码行不?路径要写好就ok 了

[ 本帖最后由 hkzhc 于 2010-3-1 15:39 编辑 ]

TOP

原帖由 BatCoder 于 2010-3-1 09:24 发表
我的意思是,我在帮你解决问题,请你提供足够的信息。

绝对路径也不行。您看看还会是什么问题导致的

TOP

修改17楼的

echo off
echo.
echo.    输入你所要复制原文件的绝对路径,如若要复制c盘1文件夹里的所有txt文件那么就输入:c:\1\*.txt
set /p yuanwj= :
echo.
echo.    输入你复制文件所存放的的绝对路径,如若要存到c盘1文件夹里那么就输入:c:\1\
echo.
set /p mdml= :
echo.
echo.    输入你的备份目录的绝对路径,如c:\1\
echo.
set /p pf= :
cls
if exist d:\1.txt ren d:\1.txt 111.txt
dir /b %yuanwj%>>d:\1.txt
for /f %%i in (d:\1.txt) do if exist %mdml%%%i move %mdml%%%i %pf%
copy %yuanwj% %mdml%
del d:\1.txt
if exist d:\111.txt ren d:\111.txt 1.txt
echo.    复制成功!
pause>nul

TOP

原帖由 hkzhc 于 2010-3-2 09:16 发表
echo off
echo.
echo.    输入你所要复制原文件的绝对路径,如若要复制c盘1文件夹里的所有txt文件那么就输入:c:\1\*.txt
set /p yuanwj= :
echo.
echo.    输入你复制文件所存放的的绝对路径,如若要存到c盘1 ...

测试通过,但是回到我起初的问题;

1、使用相对路径;

2、有很多不规范的文件要做备份;

3、包含子目录与空格文件名。


怎么修改

TOP

回复 20楼 的帖子

1,相对路径,你可以事先用set 定义一个相对路径,然后知道 ".."是上级目录 "."是本级目录即可

2,这里说的*.txt不一定是固定的,你可以用*.*代替,具体的看情况

3,有空格的话可以将这句for /f %%i in (d:\1.txt) do if exist %mdml%%%i move %mdml%%%i %pf%改为

for /f "delims=" %%i in (d:\1.txt) do if exist %mdml%"%%i" move %mdml%"%%i" %pf%

然后再试试看

再就是 copy 可以适当的改为 xcopy ,xcopy 的命令可以看帮助即可

[ 本帖最后由 hkzhc 于 2010-3-4 10:00 编辑 ]

TOP

返回列表