中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-04 01:19
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 大家好哇.小菜一名来请教下大侠.我想实现某样功能. 查看 672 回复 8
楼 主 大家好哇.小菜一名来请教下大侠.我想实现某样功能. 发表于 2007-04-11 07:22 ·  中国 广东 清远 电信
初级用户
积分 28
发帖 10
注册 2007-04-11 04:28
19年会员
UID 84696
性别 男
状态 离线
我现在想做一个批处理文件帮我自动复制某个文件夹..
现在我提出我现在遇上的难题..希望大家能帮我想想怎么才能解决.

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

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

下一帖里帖出来好了..现在已经超多了.
2 发表于 2007-04-11 07:25 ·  中国 广东 清远 电信
初级用户
积分 28
发帖 10
注册 2007-04-11 04:28
19年会员
UID 84696
性别 男
状态 离线
@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

以上是我自己写的..找了两天的文章了..始终也只是写到了这样的程度.
3 发表于 2007-04-11 07:31 ·  中国 辽宁 丹东 联通
初级用户
★★
积分 116
发帖 56
注册 2007-03-07 04:53
19年会员
UID 80966
性别 男
状态 离线
我也菜,呵呵,稍微明白点你的意思
但你if用的就貌似~~路径引的似乎也~~
找高手帮你写个吧~~
QQ=3391617
4 发表于 2007-04-11 07:48 ·  中国 广东 清远 电信
初级用户
积分 28
发帖 10
注册 2007-04-11 04:28
19年会员
UID 84696
性别 男
状态 离线
哈哈.``其实路径是替换上去的..因为文件夹的名也是不定的..不过没问题..基本上会查找路径和复制那就行了..
5 发表于 2007-04-11 07:54 ·  中国 北京 海淀区 方正集团
中级用户
★★
积分 404
发帖 179
注册 2006-03-30 14:44
20年会员
UID 53056
状态 离线
你的需求写的太模糊拉
6 发表于 2007-04-11 09:11 ·  中国 广东 清远 电信
初级用户
积分 28
发帖 10
注册 2007-04-11 04:28
19年会员
UID 84696
性别 男
状态 离线
我是想要寻找一个文件夹的路径..然后将这个文件夹的所有文件复制过去我指定的文件夹..有比较方便的码吗?
7 发表于 2007-04-11 10:39 ·  中国 安徽 芜湖 电信
高级用户
★★★
积分 866
发帖 415
注册 2005-12-04 11:19
20年会员
UID 46459
状态 离线
这个只能复制根目录下的文件夹的所有文件。你可以试试看。

@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读取。比较笨的方法,偶只会这么多了。
8 发表于 2007-04-11 11:36 ·  中国 广东 广州 联通
银牌会员
★★★
积分 1,206
发帖 517
注册 2007-03-25 01:18
19年会员
UID 82819
性别 男
状态 离线
还没有弄明白你的意思?
知,不觉多。不知,乃求知
9 发表于 2007-04-12 11:10 ·  中国 广东 清远 电信
初级用户
积分 28
发帖 10
注册 2007-04-11 04:28
19年会员
UID 84696
性别 男
状态 离线
7楼的已经说的差不多咯..
我就是在所有盘(C.D.E所有分区)内寻找一个我想找到的知道文件夹名的文件夹..
例如我要找一个叫FDS的文件夹..然后将它完全复制到某个文件夹...
就在所有盘内找FDS这个名字的文件夹的路径.然后将他复制到我指定的文件夹(例如:D:\FDS)

意思如上..应该已经很清楚了吧?
论坛跳转: