用 JavaScript 迁移目录

2016-02-19 15:19 6 1 收藏

下面图老师小编要向大家介绍下用 JavaScript 迁移目录,看起来复杂实则是简单的,掌握好技巧就OK,喜欢就赶紧收藏起来吧!

【 tulaoshi.com - Web开发 】

这两天用虚拟机安装系统,准备用虚拟机把开发环境和数据库分离,想法如下:

      1.开发环境为Host

      2.Guest 为数据库服务器,每一个服务器都是一个独立的虚拟机

       数据库包括,Oracle 9i、SQL Server 2005、MySQL

   但是装系统,还要设置环境变量,以减少系统盘的占用和增加性能,这就需要迁移系统盘的一些目录了,比如IE临时目录,临时文件夹,Applocation Data;此外,我们还需要把重要的文件夹移动到其他分区,以避免在系统盘发生事故或者想要恢复的时候,重要数据(MyDocument,收藏夹,程序配置等)不受影响。

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)

   手动修改环境变量和注册表值太麻烦了,因为我每次装系统都要修改那么一次,这次实在受够了,心里一发狠。好,我写个脚本把你搞定!

   BAT是不能设置系统环境变量的,此外可用的就有 VBScript 和 JScript 了;VBScript 的好处是有对话框,JScript没有(alert等只能在网页中使用),而JScript 的代码条理清晰一些,并且功能强大,可以使用正则表达式等功能。

   于是乎,写了下面的脚本,各位大虾请看代码:

  1//********************************************************************
  2// Copymiddle 2006 Zealic,All middle keeped.
  3//********************************************************************
  4//** 环境变量名
  5//** 设置环境变量名,这些值影响环境变量的名字,建议不要修改
  6
  7var VN_PATH        = "PATH";
  8var VN_PROFILE        = "PROFILE";
  9var VN_PROFILE_USER    = "PROFILE_USER";
 10var VN_VOLATILE_PROFILE    = "VOLATILE_PROFILE";
 11var VN_TEMP        = "TEMP";
 12
 13
 14//********************************************************************
 15//** 设置
 16
 17var m_Prefix        = "GUEST_";
 18var m_UserName        = "Zealic";
 19var m_Profile        = "D:Profile";
 20var m_VoltProfile    = "F:VolatileProfile";
 21var m_UserPath        = "C:WINDOWSMicrosoft.NETFrameworkv2.0.50727;"
 22                + "D:JavaJRECurrentlyin";
 23
 24//调用函数以设置
 25SetEnvironment(m_Prefix,m_UserName,m_Profile,m_VoltProfile,m_UserPath);
 26
 27
 28//********************************************************************
 29//** 函数定义
 30
 31// 设置环境变量
 32//     prefix         : 环境变量名的前缀
 33//     userName    : 用户名
 34//     profile        : 重要文件目录
 35//     voltProfile    : 非重要文件目录
 36//     userPath    : 用户 Path,设置该值以进行快捷运行程序
 37function SetEnvironment(prefix,userName,profile,voltProfile,userPath)
 38{
 39    //开始设置
 40    var currentName;
 41    //===========================

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/) 42    // 设置系统重要目录
 43    currentName = prefix + VN_PROFILE;
 44   
 45    SetSystemValue(currentName, profile);
 46
 47    // 设置设置用户重要目录
 48    currentName = prefix + VN_PROFILE_USER;
 49    SetSystemValue(currentName, "%" + prefix + VN_PROFILE + "%" + userName);
 50
 51    // 设置设置系统非重要目录
 52    currentName = prefix + VN_VOLATILE_PROFILE;
 53    SetSystemValue(currentName, voltProfile);
 54
 55    // 设置设置用户非重要目录
 56    currentName = prefix + "VOLATILE_PROFILE_USER";
 57    SetSystemValue(currentName, "%" + prefix + VN_VOLATILE_PROFILE + "%" + "" + userName);
 58
 59    // 设置临时目录
 60    currentName = prefix + "TEMP";
 61    SetSystemValue(currentName, "%" + prefix + VN_VOLATILE_PROFILE + "%" + "Temporary");
 62
 63    //设置TEMP变量
 64    var temp = "%" + prefix + VN_TEMP + "%";
 65    SetUserValue("TMP", temp);
 66    SetUserValue("TEMP", temp);
 67    SetSystemValue("TMP", temp);
 68    SetSystemValue("TEMP", temp);
 69
 70    // 设置 Path 和 自定义 Path 连接
 71    var currentName = prefix + VN_PATH;
 72    SetSystemValue(currentName, userPath);
 73    // 检测是否已经存在Path,如果不存在则设置
 74    var regValue = new RegExp("%" + prefix + VN_PATH + "%","i");
 75    if(!regValue.test(GetSystemValue("Path")))
 76    {
 77        SetSystemValue("Path",GetSystemValue("Path") + ";%" + prefix + VN_PATH + "%");
 78    }
 79}
 80
 81// 调试用函数
 82function Debug(msg)
 83{
 84    wsh = new ActiveXObject("WScript.Shell");
 85    wsh.Popup(msg);
 86}
 87
 88// 获取用户环境变量
 89function GetUserValue(name,value)
 90{
 91    wsh = new ActiveXObject("WScript.Shell");
 92    return wsh.Environment("user").Item(name);
 93}
 94// 设置用户环境变量
 95function SetUserValue(name,value)
 96{
 97    wsh = new ActiveXObject("WScript.Shell");
 98    wsh.Environment("user").Item(name) = value;
 99}
100// 删除用户环境变量
101function RemoveUserValue(name)
102{
103    wsh = new ActiveXObject("WScript.Shell");
104    wsh.Environment("user").Remove(name) = value;
105}
106
107// 获取系统环境变量
108function GetSystemValue(name,value)
109{
110    wsh = new ActiveXObject("WScript.Shell");
111    return wsh.Environment("system").Item(name);
112}
113// 设置系统环境变量
114function SetSystemValue(name,value)
115{
116    wsh = new ActiveXObject("WScript.Shell");
117    wsh.Environment("system").Item(name) = value;
118}
119// 删除系统环境变量
120function RemoveSystemValue(name)
121{
122    wsh = new ActiveXObject("WScript.Shell");
123    wsh.Environment("system").Remove(name) = value;
124}
125
126
127
128

   其中 Profile 为有价值的数据和文件 ,VolatileProfile 用过而无价值的数据和文件。这样,我们就可以清楚的知道,Profile 要保留,VolatileProfile 则可以经常清理。

   之后我还需要把 Desktop,My Document,Favorites文件夹迁移到 Profile 目录中,然后就开始安装数据库。

   不过嘛,今天太晚了,明天再说~~~

   明天用用 JScript 操作注册表以迁移系统的一些目录到 Profile 和 VolatileProfile 目录。

来源:http://www.tulaoshi.com/n/20160219/1609392.html

延伸阅读
标签: Web开发
我们走到哪儿了?前两期思考了太多东西,你是否已有倦意?别担心,本期的话题很轻松,你只需要简单了解一些语法,写几行配置,就能驱使系统按你预设的方式自动完成一些工作。听起来是不是很惬意?Let’s go! 我们出发啦~ 这期,我们会使用 Ant 将上期编写、整理的代码文件按指定的先后顺序合并成单一的源文件,然后压缩这个文件。这...
标签: ASP
数据库结构(共使用了两个表) 1.tblCategory 字段名 类型 Root binary 说明树关或开(目录的根) ID 自动编号 关键字 Sort integer 识别该字段内容的整数(如果root是开状态sort为0)表示显示的目录的顺序 Name text(255)可以包含html中的标识符 HREF text(255) 允许空 2.tblPages ID 自动编号 Sort integer 关键字 Name text...
标签: 软件教程
分区助手是款针对于系统的工具,功能强大。分区助手能对你的磁盘进行无损的管理,下面小编就给大家分享一片分区助手怎么迁移系统的文章 步骤一:打开你的分区助手,找到向导下面的迁移OS到SSD/HDD 步骤二:点击“迁移OS到SSD/HDD”,点击下一步 步骤三:选择你要复制到的磁盘空间,点击下一步 步骤四...
标签: Web开发
用css属性选择器可以有选择性地对链接样式进行控制,如让所有的外部链接都加一个小图标来标识其是一外部链接。 但用css有弊端: 1、只支持FireFox等对web标准支持很好的浏览器。 2、只能判断链接,不能判断锚点或javascript。如遇到就无能为力了。 这里可以结合js来完成,首先写一个样式: 以下是引用片段: a.other:...
标签: Web开发
jQuery是我最近发现的一个新工具。jQuery开发团队形容jQuery是“一个快捷、简练的JavaScript库,它可以简化HTML文档检查、事件处理、动画执行、并给你的Web页面增加AJAX交互。” jQuery初步 你可以免费下载jQuery的最新版本。它由一个明确定义的脚本文件构成,因此你可以随意研究它的源代码。下载JavaScript文件后,你就可以把它放在Web服务...

经验教程

336

收藏

10
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部