Board logo

标题: 大家好哇.小菜一名来请教下大侠.我想实现某样功能. [打印本页]

作者: xinley     时间: 2007-4-11 07:22    标题: 大家好哇.小菜一名来请教下大侠.我想实现某样功能.

我现在想做一个批处理文件帮我自动复制某个文件夹..
现在我提出我现在遇上的难题..希望大家能帮我想想怎么才能解决.

由于我想弄的是一个帮我自动复制文件的BAT..
现在我遇上最大的难题是不知道怎么在批处理里复制寻找到的路径.之后再粘到需要用到的地方去.
或许问题不是太清楚..举个范例吧..
我想在所有盘中(可能难以实现.现在打算不能实现也打算先设好所有路径让他一个一个找算了)寻找一个文件夹..如果这个文件夹存在.那我就将他的路径复制好.然后再将那个文件夹的所有文件夹复制到我想指定的文件夹内.

现在我弄出来的东东是这个..应该是很菜的.不过还是拿出来献下丑.希望大家指教指教.

下一帖里帖出来好了..现在已经超多了.
作者: xinley     时间: 2007-4-11 07:25
@ECHO OFF
if exist X:\*\* if errorlevel 1 goto end
if errorlevel 0 goto cp
:cp
echo 寻找到文件夹!开始复制.....
MD D:\*\
xcopy X:\*\*\*.* D:\*\
MD D:\*\Data
xcopy X:\*\*\Data\*.* D:\*\Data
MD D:\*\Icon
xcopy X:\*\*\Icon\*.* D:\*\Icon
MD D:\*\Logs
xcopy X:\*\*\Logs\*.* D:\*\Logs
MD D:\*\Music
xcopy X:\*\*\Music\*.* D:\*\Music
MD D:\*\Sys
xcopy X:\*\*\Sys\*.* D:\*\Sys /S
:end
echo 没有找到文件夹.复制不能继续!
pause
exit

以上是我自己写的..找了两天的文章了..始终也只是写到了这样的程度.
作者: 3391617     时间: 2007-4-11 07:31
我也菜,呵呵,稍微明白点你的意思
但你if用的就貌似~~路径引的似乎也~~
找高手帮你写个吧~~
作者: xinley     时间: 2007-4-11 07:48
哈哈.``其实路径是替换上去的..因为文件夹的名也是不定的..不过没问题..基本上会查找路径和复制那就行了..
作者: kcdsw     时间: 2007-4-11 07:54
你的需求写的太模糊拉
作者: xinley     时间: 2007-4-11 09:11
我是想要寻找一个文件夹的路径..然后将这个文件夹的所有文件复制过去我指定的文件夹..有比较方便的码吗?
作者: htysm     时间: 2007-4-11 10:39
这个只能复制根目录下的文件夹的所有文件。你可以试试看。

@echo off
set/p path_=请输入你要查找的文件夹。
for %%i in (c d e f g h) do (
    dir /b %%i:\%path_% >nul 2>nul && (
    xcopy /s %%i:\%path_%\* e:\tttt\)
    ) || (echo 在%%i:盘找不到文件夹,按任意键查找下一个磁盘。& pause>nul)
    )
echo 按任意退出程序 & pause>nul

如果确实想获得一个文件夹的绝对路径,可以用:dir /s/b 文件夹名称> d:\path.txt命令来打到一个文本文件中,再用FOR读取。比较笨的方法,偶只会这么多了。
作者: flyinspace     时间: 2007-4-11 11:36
还没有弄明白你的意思?
作者: xinley     时间: 2007-4-12 11:10
7楼的已经说的差不多咯..
我就是在所有盘(C.D.E所有分区)内寻找一个我想找到的知道文件夹名的文件夹..
例如我要找一个叫FDS的文件夹..然后将它完全复制到某个文件夹...
就在所有盘内找FDS这个名字的文件夹的路径.然后将他复制到我指定的文件夹(例如:D:\FDS)

意思如上..应该已经很清楚了吧?