超星图书虽然文字质量不高,但是比较新,比较全,所以还是值得一看的。

但是,超星图书的每一页,都是一个独立的文件,很小,远远小于现在的硬盘簇大小,造成极大的空间浪费,同时,在拷贝移动文件时,由于要处理大量文件,拷贝或移动的速度也极慢。

比较好的方法,是把每本超星图书的全部页面文件压缩成一个文件,阅读时再解开,这样可以大大减少硬盘空间浪费,拷贝时速度也指数提高。

不过,如果有大量超星图书,要对每本书,在目录上按右按,然后选择压缩,效率太低。因此,我在这里用Windows Script脚本语言编写了一个脚本,能够自动把指定目录下的每个图书目录自动压缩成单独的压缩文件。

如果是在命令行窗口下执行,可以用

cscript compress.js 要压缩的目录

这样,可以输出工作的进度信息,如果直接点击compress.js,会弹出提示窗口,影响使用。

同时,需要在路径PATH环境参数里设置压缩使用的压缩软件的目录,我使用二种压缩软件,一种是PKZIP25,是32位的命令行下ZIP压缩程序,还用WINRAR的命令行版本,RAR.exe,对应这二个压缩程序的脚本如下:

使用PKZIP25.exe的Compress.js

var fs=new ActiveXObject("Scripting.FileSystemObject");
var s=WScript.CreateObject("WScript.Shell");
var arg=WScript.Arguments;

//取得要处理的目录
if(arg.Count())
{
  var f=fs.GetFolder(arg.item(0));
}
else
{
  var f=fs.GetFolder(".")};
}

//取得指定目录下所有目录的集合
  var fc=new Enumerator(f.SubFolders);
  for(;!fc.atEnd();fc.moveNext())
  {
    var ff=fs.GetFolder(fc.item());
    var fname=ff.Name;
    WScript.Echo("正在压缩 "+'"'+fname+'"');
    s.Run("pkzip25.exe -add -directories -move -recurse /""+fname+"/"  /""+fc.item()+"/",7,true);
    WScript.Echo('"'+fname+'"'+"压缩完");
  }
}
注释:pkzip25的压缩命令行参数是
-add加入文件到压缩文档
-move压缩后删除源文件
-directories保存目录结构,使用相对路径
-recurse递归处理子目录

使用rar.exe的compress.js

var fs=new ActiveXObject("Scripting.FileSystemObject");
var s=WScript.CreateObject("WScript.Shell");
var arg=WScript.Arguments;

//取得要处理的目录
if(arg.Count())
{
  var f=fs.GetFolder(arg.item(0));
}
else
{
  var f=fs.GetFolder(".")};
}

//取得指定目录下所有目录的集合
  var fc=new Enumerator(f.SubFolders);
  for(;!fc.atEnd();fc.moveNext())
  {
    var ff=fs.GetFolder(fc.item());
    var fname=ff.Name;
    WScript.Echo("正在压缩 "+'"'+fname+'"');
    s.Run("rar m -r /""+fname+"/"  /""+fc.item()+"/",7,true);
    WScript.Echo('"'+fname+'"'+"压缩完");
  }
}
注释:rar的压缩命令行参数是
m 移动文件到压缩档案
-保存目录结构,使用相对路径,并递归处理子目录

注意:

1、一定要用cscript.exe在命令行下执行,否则会不断弹出提示窗口
2、在PATH环境变量里设置好rar和pkzip25的路径

超星图书压缩专用脚本程序相关推荐

  1. \t\t把超星图书虚拟打印为PDF格式,实现永久阅读

    把超星图书虚拟打印为PDF格式,实现永久阅读 超星图书是一个丰富的电子图书资源,一般大学图书馆购买了这个系统的账号即可登陆下载其所提供的所有图书.有些绝版图书都能找到.非常实用,首先感谢超星图书工作人 ...

  2. 怎样让超星图书浏览器不会过期

    2001年02月16日 08:43:00 怎样让超星图书浏览器不会过期 我当的这个超星图书浏览器可以使用到 99.12.30.据此,我开始查找相关判断语 句,我发现系统函数读出时间后,将年份赋于EAX ...

  3. 《从问题到程序:用Python学编程和计算》——2.6 简单脚本程序

    本节书摘来自华章计算机<从问题到程序:用Python学编程和计算>一书中的第2章,第2.6节,作者 裘宗燕,更多章节内容可以访问云栖社区"华章计算机"公众号查看. 2. ...

  4. 服务器页是指包含什么脚本程序的网页,有会做的吗?

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 1. [多选题] 在Windows服务器中,下列服务定位为角色的是( ) AWeb服务 BDNS服务 CDHCP服务 D终端服务 ESMTP服务 FTel ...

  5. 升腾、实达终端绑定辅助脚本程序

    升腾.实达终端绑定辅助脚本程序 --Unix Shell编程笔记 作者:半点闲 博客:blog.csdn.net/cg_i 时间:2011-1-27 13:54 星期四 开发环境:Ubuntu10.1 ...

  6. 小红书引流脚本,小红书引流加粉

    大家好,我是小刘互联网思维.最近小红书越来越火,所以很多人或者小团队也都盯上了这个新兴市场.有人选择手动引流,就一定有人想软件引流,有些朋友就私信问我这个软件引流要怎么操作,接下来我就为大家简单讲解小 ...

  7. 制作显示欢迎信息的脚本程序

    终端程序恐怕是Linux用户使用最为频繁的了.我的Debian系统启动后便是直接进入的终端界面.为了在每次登录时或者是在X视窗环境下打开终端程序时显示一些欢迎信息,比如当前的日期.名人警句等,从而可以 ...

  8. 怎样在javascript函数中将变量传递给服务端脚本程序?

    怎样在javascript函数中将变量传递给服务端脚本程序? (有朋友问上述问题, 愿把结论分享给大家). 摘 要:   服务器端脚本运行时, 它只会解释执行<% %>或<?php ...

  9. 如何改进你的脚本程序

    你是否曾经查看过某个软件发行方提供的安装用的脚本script程序?为了能够适应不同用户的系统配置,顺利完成安装,这些脚本程序经常包含很多函数和逻辑分支.多年来,我积累了一些改进脚本程序的一些技巧,这里 ...

最新文章

  1. Button的点击事件
  2. springboot activiti 配置项详解
  3. java正则表达式提取字符串中的数字
  4. html自动加https,http自动跳转https的配置方法
  5. 微信小程序 本地mysql_微信小程序系列之使用缓存在本地模拟服务器数据库
  6. [转]FastJSON通过SerializeFilter定制序列化
  7. java 高级工程师要求
  8. sql优化常用的几种方法
  9. HBase数据模型和表设计思路
  10. java1.8离线安装包_离线安装JDK1.8
  11. Micropython教程之TPYBoard DIY电子时钟(萝卜学科编程教育)
  12. Excel2016 怎么做数据分类汇总
  13. 企业项目文档库管理系统推荐
  14. 算法:根据四色定理(Four color theorem),求出地图的所有着色方案
  15. 在线编辑office插件(weboffice)使用
  16. Java利用Set集合去重复
  17. Discuz数据库调用:DZ模板调用常用代码手册
  18. catkin_make时出现‘CV_RETR_TREE’ was not declared in this scope
  19. 通过一个无人机代码例程学会ardunio
  20. 浅析跨境电商行业为何发展如此迅猛?

热门文章

  1. Domain、Pojo、Do、Vo命名方式的区别
  2. 3733apk的服务器文件,3733游戏盒
  3. 服务器操作系统份额2018,2018年第四季度|国内操作系统及浏览器占比情况分析
  4. Vue简单的实现五星级评分
  5. http://www.cnblogs.com/hoojo/archive/2011/06/08/2075201.html
  6. Vivo手机配什么牌子蓝牙耳机好?适配vivo手机国产降噪耳机推荐
  7. 小谈《我叫MT Online》为什么会火
  8. R学习-知识点记录(Temp)
  9. java责任链模式审批请假_Java设计模式-责任链模式
  10. JD京东sign一号店京东极速版京东京喜京粉小程序Api算法接口测试