选择显示字体大小

windows 98 巧还原—批处理命令大显身手!

目前很多学校的网络教室采用pxe无盘工作站技术,尽管pxe工作站的管理有口皆碑,但由于学生的好奇甚至故意的“恶作剧”,差不多每一节课不等上完,系统就被弄得乱七八糟、面目全非了……

尽管这些都可以很容易地被禁止,但是限制越多,对学生来说越是索然无味,满足不了学生的好奇心和求知欲;如果在服务器上安装“还原精灵”的话,又使本已不堪重负的服务器变得更慢,并且只有经过漫长的服务器重启才能还原……于是,清空无盘工作站用户目录便成了还原工作站设置的最简单、最快捷、最有效的方法了!

然而,倘若靠手工逐个地清空无盘工作站用户目录,很是麻烦。其实这样的“苦差”完全可以请dos完成——编个简单的批处理文件,轻松一按,几十台工作站的系统还原便瞬间完成!

为使叙述直观具体,就以我校的网络教室为实例来阐述。

■ 网络教室环境
我校的网络教室基本情况如下:

1.服务器操作系统windows 2000,安装在服务器c盘。

2.30台无盘工作站操作系统为windows 98,上传在服务器d盘pxe目录里。

3.30台无盘工作站用户名依次为:a1~a5……f1~f5。用户目录与用户名相同,依次为服务器上“d:\pxe\”文件夹里的以下目录:a1~a5……f1~f5。

4.每个用户目录须有四个授权用户,即除了administrator、system、lnguest这三个全权用户外,另外必须还有一个全权用户——自身(如a1用户拥有对a1目录的全部权限),这样,就在实现对自己的目录完全控制的情况有效地避免了打开其他用户目录进行 “非法活动”了!

■ 编写批处理文件
现在,情况清楚了,要完成的任务就是:清空这30个用户目录(以达到还原无盘工作站之目的)。当然不是用手工删除,而是用一个简单的dos批处理文件cacls.bat(当然也可用其他名称)来完成。内容为:

d:

cd \pxe

for %%x in (a b c d e f) do for %%y in (1 2 3 4 5) do rd/s/q %%x%%y

for %%x in (a b c d e f) do for %%y in (1 2 3 4 5) do md %%x%%y

for %%x in (a b c d e f) do for %%y in (1 2 3 4 5) do cacls d:\pxe\%%x%%y /e /g %%x%%y:f /r pxeclass

简单说明:
1. 该批处理文件中的dos命令都是针对windows 2000操作系统自带的dos命令,而不是windows 98里的dos命令。

2.因为dos中没有清空目录的命令,所以,只有分三步走了:

第一步,删除a1~f5这30个目录:for %%x in (a b c d e f) do for %%y in (1 2 3 4 5) do rd/s/q %%x%%yfor…in…do…是一个循环结构,注意变量名称是区分大小写的。

在这个二重循环嵌套里,第一次循环%%x值取a,执行for %y in (1 2 3 4 5) do rd/s/q a%y 命令,删除a1、a2、a3、a4、a5;第二次循环%%x值取b,执行for %y in (1 2 3 4 5) do rd/s/q b%y 命令,删除b1~b5……依此类推,共进行6次循环,执行30次删除目录操作。rd/s删除非空目录,/q表示为安静模式(quiet),即不询问。

第二步,重建这30个目录:for %%x in (a b c d e f) do for %%y in (1 2 3 4 5) do md %%x%%y重建后的a1~f5这30个文件夹图标,都有一个手形共享标志——竟然奇迹般地“记住”了先前的这30个文件夹的共享属性!

第三步,分别为这30个目录设置不同的权限:for %%x in (a b c d e f) do for %%y in (1 2 3 4 5) do cacls d:\pxe\%%x%%y /e /g %%x%%y:f /r pxeclass cacls用来显示或者修改文件的访问控制表(acl)即访问权限。这行命令的作用是为30个目录(a1~f5)添加一个自身用户并赋予全部权限(/e /g %%x%%y:f);同时撤消一个pxeclass组权限(/r pxeclass)。pxeclass组是从其父目录(d:\pxe)继承而来,a1~f5都隶属于该组,之所以要撤消该组权限,目的是为了限制学生相互访问恶意删除他人文件。至于另三个全权用户(administrator、system、lnguest),md在重建30个目录时已自动从d:\pxe继承了!

批处理文件的高明之处在于:删除和重建这30个目录不需写长长的30行rd命令,而只要一个for循环嵌套就行了。由于在删除时没有取消共享,这30个目录重建后会保持原有的共享设置。


 


关键字 本文所属关键字

相关 与本文相关文章

分类 所有文章关键字导航

源码编程相关

Java   Asp   PHP   .Net   XML   C/C++   CGI   VB   Jsp   J2ee   J2se   J2me   EJB   Servlet   Tomcat   Resin   Struts   Weblogic   Eclipse   ANT   GUI   JMS   Web servise   IDEA   Webphere   Hibernate   Spring   Jboss   Applet   Swing   Socket   Javamail   Perl   Ajax   P2P   安全   模式   框架   测试   开源   游戏

SQL数据库相关

My-SQL   Ms-SQL   Access   DB2   Oracle   Sybase   SQLserver   索引   存储过程   加密   数据库   分页   视图  

手机无线相关

3G   Wap   CDMA   GRPS   GSM   IVR   彩信   短信   无线   增值业务

网页设计制作相关

HTML   CSS   网页配色   网页特效   Javascript   VBscript   Dreamweaver   Frontpage   JS   Web   网站设计

网站建设推广相关

建站经验   网站优化   网站排名   推广   Alexa

操作系统/服务器相关

Windows XP   Windows 2000   Windows 2003   Windows Me   Windows 9.x   Linux   UNIX   注册表   操作系统   服务器   应用服务器

图形图像多媒体相关

Photoshop   Fireworks   Flash   Coreldraw   Illustrator   Freehand   Photoimpact   多媒体   图形图像

标准 网站致力的规范

Valid CSS!

无不良内容,无不良广告,无恶意代码

Valid XHTML 1.0 Transitional

creativecommons