![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-09 00:18 |
共 47,811 主题排行 / 349,895 发帖 / 今日 0 篇 / 48,253 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » 一个按照文件扩展名整理文件的VBS |
| 可打印版本 5,202 / 22 |
| 第1楼 jmz573515 | 发表于 2006-12-15 03:05 |
| 银牌会员 发帖 464 积分 1,212 | |
|
一个按照文件扩展名整理文件的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 fso.folderexists(fso.GetExtensionName(file) & "文件") then fso.movefile file, fso.GetExtensionName(file) & "文件\" else fso.createfolder (fso.GetExtensionName(file) & "文件") fso.movefile file, fso.GetExtensionName(file) & "文件\" end if next msgbox "已经将所所有文件按类型分类。",48+4096,"操作成功" [ Last edited by jmz573515 on 2006-12-15 at 08:17 AM ] |
|
| 第2楼 electronixtar | 发表于 2006-12-15 04:16 |
| 铂金会员 发帖 2,672 积分 7,493 | |
|
不错~
|
|
| 第3楼 lxmxn | 发表于 2006-12-15 04:40 |
| 版主 发帖 4,938 积分 11,386 | |
|
学习了~ |
|
| 第4楼 Primalchaos | 发表于 2006-12-15 05:06 |
| 初级用户 发帖 19 积分 41 | |
|
不知bat做出来怎样。大家试试:
|
|
| 第5楼 namejm | 发表于 2006-12-15 05:39 |
| 荣誉版主 发帖 1,737 积分 5,226 来自 成都 | |
|
以下代码能实现和顶楼的vbs代码同样的功能。有所区别的是,不会移动自身:
能处理子目录的代码请点 这里 查看。 [ Last edited by namejm on 2006-12-16 at 10:57 AM ] |
|
| 第6楼 ccwan | 发表于 2006-12-15 05:47 |
| 金牌会员 发帖 1,160 积分 2,725 来自 河北廊坊 | |
|
版主这个好!
它会保留自身,不进入.bat文件夹。 |
|
| 第7楼 redtek | 发表于 2006-12-15 06:12 |
| 金牌会员 发帖 1,147 积分 2,902 | |
|
欣赏~~
|
|
| 第8楼 lxmxn | 发表于 2006-12-15 07:19 |
| 版主 发帖 4,938 积分 11,386 | |
|
顶一个先。 |
|
| 第9楼 jmz573515 | 发表于 2006-12-15 21:18 |
| 银牌会员 发帖 464 积分 1,212 | |
|
经过改进------以下是可以保留自身的VBS。 ****以下是可以保留自身的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(fso.GetExtensionName(file) & "文件") then fso.movefile file, fso.GetExtensionName(file) & "文件\" else fso.createfolder (fso.GetExtensionName(file) & "文件") fso.movefile file, fso.GetExtensionName(file) & "文件\" end if else end if next msgbox "已经将所所有文件按类型分类。",48+4096,"操作成功" |
|
| 第10楼 ccwan | 发表于 2006-12-15 22:07 |
| 金牌会员 发帖 1,160 积分 2,725 来自 河北廊坊 | |
|
好啊。现在受限,回头给你加分。
|
|
| 第11楼 ccwan | 发表于 2006-12-16 06:29 |
| 金牌会员 发帖 1,160 积分 2,725 来自 河北廊坊 | |
|
我说到做到^_^ 灌水~~
|
|
| 第12楼 voiL | 发表于 2006-12-16 08:45 |
| 中级用户 发帖 189 积分 384 | |
|
这个不错,不知兄们能否做个可以根据MP3位速来归类的VBS呢...
|
|
| 第13楼 vkill | 发表于 2006-12-16 09:40 |
| 金牌会员 发帖 1,744 积分 4,103 来自 甘肃.临泽 | |
|
做记号
|
|
| 第14楼 jmz573515 | 发表于 2006-12-17 00:10 |
| 银牌会员 发帖 464 积分 1,212 | |
|
我也来凑个热闹 ‘按类型整理文件VBS版(包含子目录),整理后原文件还在,详细请看注释。
Const WINDOW_HANDLE = 0 Const OPTIONS = &H10& Set objShell = CreateObject("Shell.Application") Set objFolder = objShell.BrowseForFolder _ (WINDOW_HANDLE, "请选择你要整理的文件夹:", OPTIONS, ".") If objFolder Is Nothing Then Wscript.Quit End If Set objFolderItem = objFolder.Self objPath = objFolderItem.Path search(objpath) sub search(folder) set fso=createobject("scripting.filesystemobject") on error resume next set folder=fso.getfolder(folder) set files=folder.files for each file in files if file.name<>wscript.scriptname then if fso.folderexists(fso.GetExtensionName(file) & "文件") then fso.copyfile file, fso.GetExtensionName(file) & "文件\" '为了安全起见此处我用的复制(copyfile)没有剪切(movefile),如果想移动文件可以自行更改。 else fso.createfolder (fso.GetExtensionName(file) & "文件") fso.copyfile file, fso.GetExtensionName(file) & "文件\" '为了安全起见此处我用的复制(copyfile)没有剪切(movefile),如果想移动文件可以自行更改。 end if else end if next set subfolders=folder.subfolders for each subfolder in subfolders search(subfolder) next end sub msgbox "已经将" & "【" & objpath & "】下所有文件按类型分类。",48+4096,"操作成功" [ Last edited by jmz573515 on 2006-12-16 at 11:13 AM ] |
|
| 第15楼 ccwan | 发表于 2006-12-17 00:22 |
| 金牌会员 发帖 1,160 积分 2,725 来自 河北廊坊 | |
|
呵呵,两位原来在比擂啊。
jmz573515兄,提个小意见,窗口停顿时间太短,来不及操作。 |
|
| 1 2 下一页 |
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |