中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 根据文件夹里的文件建对应的文件夹
作者:
标题: 根据文件夹里的文件建对应的文件夹 上一主题 | 下一主题
bbq123bbq
初级用户




积分 197
发帖 77
注册 2006-9-19
状态 离线
『楼 主』:  根据文件夹里的文件建对应的文件夹

我的电影文件夹里有和多部电影文件,能不能根据电影文件名新建一个相对应的文件夹,可能的话把电影文件复制到相对应的文件夹里???

2006-12-19 16:48
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
jmz573515
银牌会员




积分 1212
发帖 464
注册 2006-12-13
状态 离线
『第 2 楼』:  

:将文件保存到以文件名命名的文件夹中。
@echo off
for %%a in (*.*) do mkdir "%%~na"
for %%a in (*.*) do COPY %%a "%%~na"  ::如果把COPY改成MOVE就会把文件移动

2006-12-19 20:22
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
jmz573515
银牌会员




积分 1212
发帖 464
注册 2006-12-13
状态 离线
『第 3 楼』:  在发一个用VBS写的。

'目的:把当前文件夹下的所有文件保存到以文件名命名的文件夹里。


on error resume next
Set WshShell = WScript.CreateObject("WScript.Shell")
set fso=createobject("scripting.filesystemobject")
set folder=fso.getfolder(WshShell.CurrentDirectory)
set files=folder.files
for each file in files
if file.name<>wscript.scriptname then
if fso.folderexists(replace(file.name,"." & fso.GetExtensionName(file),"")) then
fso.movefile file, replace(file.name,"." & fso.GetExtensionName(file),"") & "\"
else
fso.createfolder(replace(file.name,"." & fso.GetExtensionName(file),""))
fso.movefile file, replace(file.name,"." & fso.GetExtensionName(file),"") & "\"
end if
else
end if
next
msgbox "已经将所有文件保存到以文件名命名的文件夹中。",48+4096,"操作完成"

   此帖被 +5 点积分       点击查看详情   
评分人:【 ccwan 分数: +5  时间:2006-12-20 21:05


2006-12-19 20:56
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
ccwan
金牌会员




积分 2725
发帖 1160
注册 2006-9-23
来自 河北廊坊
状态 离线
『第 4 楼』:  

兄的vbs做得不错,但2楼的批处理还有问题,不能成功。



三人行,必有吾师焉。   学然后知不足,教然后知困,然后能自强也。
2006-12-19 21:17
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
jmz573515
银牌会员




积分 1212
发帖 464
注册 2006-12-13
状态 离线
『第 5 楼』:  

还请CCWAN兄指点  :)

2006-12-19 22:07
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
ccwan
金牌会员




积分 2725
发帖 1160
注册 2006-9-23
来自 河北廊坊
状态 离线
『第 6 楼』:  

你客气了,我是认为可以以namejm版主的批处理代码为原型,修改一下就行了。
等我过了冷却期再给兄加分吧。^_^



三人行,必有吾师焉。   学然后知不足,教然后知困,然后能自强也。
2006-12-19 22:09
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
bbq123bbq
初级用户




积分 197
发帖 77
注册 2006-9-19
状态 离线
『第 7 楼』:  

第一个问题能不能解决??根据电影文件名新建和电影文件名一样的文件夹??

2006-12-20 07:03
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
bbq123bbq
初级用户




积分 197
发帖 77
注册 2006-9-19
状态 离线
『第 8 楼』:  

还有问问 "%%~na" 是什么意思啊

2006-12-20 07:06
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
26933062
银牌会员





积分 2268
发帖 879
注册 2006-12-19
状态 离线
『第 9 楼』:  

::每个文件生成一个同名文件夹,然后把各个文件拷贝到同名文件夹中
for %%i in (*.rmvb) do md "%%~ni" && copy %%i "%%~ni"
exit


2007-1-4 13:59
查看资料  发短消息 网志   编辑帖子  回复  引用回复
ocnzhao
新手上路





积分 19
发帖 10
注册 2006-4-29
状态 离线
『第 10 楼』:  

@echo off
set /p um=生成一个文件夹然后拷到夹中,‘确定按回车’:
::如果把COPY改成MOVE就会把文件移动
::每个文件生成一个同名文件夹,然后把各个文件拷贝到同名文件夹中
for %%i in (*.*) do (md "%%~ni"
for %%j in (%%i) do copy %%i "%%~ni"
)
可惜文件名中含空格我不会处理

2007-1-8 06:50
查看资料  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: