使用WScript批量解压缩
今天用一台装windows的机器从eMule下了些音乐下来,几十个压缩包,手工解压缩太麻烦。想批量解压缩,不知道是不是winrar没有这个功能,反正我是没在winrar里找到批量解压缩的功能。于是找找资料,写了一个WScript脚本来批量解压缩。有人问我为什么不用Linux来下载解压缩,没办法,谁叫大家都用rar压缩,在我的机器上,linux解rar出错率在10%左右。不知道是不是rp。
使用方法:
1)把C:\Program Files\WinRAR\Rar.exe复制一份到系统文件夹下(如:C:\WINDOWS)
2)把下面的代码保存为rar.js,假设保存到c盘下吧
1
var fso = WScript.CreateObject("Scripting.FileSystemObject");
2
var archive_dir = "C:\\Program Files\\eMule\\Incoming\\beyond";//压缩文件存放路径
3
var to_dir = "E:\\music";//解压缩到这里
4
var rar_exe = "Rar.exe";//解压缩工具
5
var get_name_pattern = /SurfChen\.\-\.\[([^\]]*)\]/;//获取文件名字的正则
6
var number_of_pattern = 1;//名字在返回的正则匹配中的位置
7
if (fso.FolderExists(archive_dir)==false) {
8
WScript.Echo("folder does not exists");
9
WScript.quit(1);
10
}
11
function getFiles(Folder)
12
{
13
return new Enumerator(Folder.Files);
14
}
15
var WshShell = WScript.CreateObject("WScript.Shell");
16
var my_folder = fso.GetFolder(archive_dir);
17
var my_files = getFiles(my_folder);
18
for (my_files.moveFirst();!my_files.atEnd();my_files.moveNext()) {
19
file_path = new String(my_files.item());
20
file_name_rs = file_path.match(get_name_pattern);
21
to_e_dir = to_dir+"\\"+file_name_rs[number_of_pattern];
22
if (fso.FolderExists(to_e_dir)==false) {
23
fso.CreateFolder(to_e_dir);
24
}
25
WshShell.run(rar_exe+" e \"" + file_path +"\" " + to_e_dir,0,true);
26
}
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
2
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
3
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
4
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
5
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
6
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
7
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
8
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
9
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
10
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockEnd.gif)
11
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
12
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
13
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
14
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockEnd.gif)
15
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
16
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
17
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
18
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
19
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
20
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
21
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
22
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
23
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
24
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
25
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
26
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockEnd.gif)
3)运行 WScript C:/rar.js
我来自:向东博客