《Windows 7脚本编程和命令行工具指南》是2011年机械工业出版社出版的图书,作者是BrianKnittel。
基本介绍
- 书名:Windows 7脚本编程和命令行工具指南
- 作者:(美) BrianKnittel
- 出版社:机械工业出版社
- 出版时间:2011-10-1
基本信息
版 次:1
印刷时间:2011-10-1
纸 张:胶版纸
印 次:1
I S B N:9787111356776
包 装:平装
编辑推荐
详尽讲解微软最新命令行自动化工具Windows PowerShell
囊括Windows提供的数百个命令行程式和脚本编程对象
教你全面掌握Windows批处理档案和脚本程式语言
内容简介
Windows 7及其之前的Vista版本都带有脚本命令、批处理档案和命令行工具,这些工具可以帮助管理员更轻鬆地完成任务,大大提高工作效率。本书通过大量实例,深入浅出地讲解这些工具,为广大Windows用户揭开这些工具的神秘面纱。

本书主要内容包括三大部分:第一部分介绍Windows Script Host工具,包括VBScript程式语言、对象的使用、编写和调试脚本等,提供了Windows很多脚本编程对象的详细参考。第二部分介绍用来编写批处理档案的Windows命令语言,包括命令行环境、MS-DOS模拟、通过管理工具来修改命令环境的方法,还给出Windows提供的20多种重要的命令行程式的指南。第三部分介绍Windows PowerShell的基础知识、编程和套用,掌握管理Windows工作站、伺服器和应用程式的快捷方法。
本书内容丰富,实例众多,适合Windows高级用户、系统管理员、开发人员参考。
作者简介
Brian Knittel 有30多年的软体开发经验。在做完电子工程套用于核能医学和磁共振成像技术的毕业设计之后,他成为一名专职的独立谘询师。各种各样的客户,导致他长期所从事的项目都处于医疗档案、工作流管理、实时工业系统控制等领域,最重要的是,他拥有了超过25年的MS-DOS、Windows和商业计算机网路的实际套用经验。Brian是Que出版的一系列书籍的共同作者。
目录
译者序
前言
第一部分 用Windows Script Host进行脚本编程
第1章 Windows脚本宿主(WSH)1
1.1 什幺是Windows脚本1
1.1.1 “Script”部分1
1.1.2 “Windows”部分2
1.1.3 “Host”部分2
1.1.4 与编写批处理档案有何不同3
1.2 脚本语言3
1.2.1 VBScript4
1.2.2 JScript4
1.2.3 Perl4
1.2.4 Python5
1.2.5 Open Object REXX5
1.2.6 Ruby5
1.2.7 选择一种语言5
1.3 一个简单的脚本5
1.4 脚本档案的类型7
1.4.1 JSE和VBE:已编码脚本8
1.4.2 Windows脚本档案(WSF)8
1.4.3 Windows脚本组件10
1.4.4 WSH设定10
1.5 创建第一个脚本档案10
1.5.1 创建一个脚本资料夹并使其安全化10
1.5.2 创建脚本12
1.5.3 脚本编辑工具12
1.6 Windows如何运行脚本13
1.6.1 Wscript和Cscript13
1.6.2 运行脚本的方式14
1.6.3 给脚本传递信息15
1.6.4 保存脚本的结果16
1.6.5 Wscript和Cscript命令选项17
1.7 运行自己的脚本19
1.7.1 将脚本添加到路径19
1.7.2 用一个捷径图示来运行脚本20
1.7.3 製作一个脚本捷径20
1.7.4 从批处理档案运行脚本21
1.7.5 自动运行脚本21
1.8 安全问题21
1.9 调试脚本23
1.10 到哪里获得更多信息26
第2章 VBScript教程27
2.1 VBScript简介27
2.1.1 变数28
2.1.2 常量28
2.1.3 命名常量29
2.1.4 运算符和表达式30
2.1.5 自动类型转换 32
2.2 流程控制32
2.2.1 If…Then语句33
2.2.2 Select Case语句35
2.2.3 Do While循环36
2.2.4 用Exit Do终止循环38
2.2.5 用For…Next语句计数39
2.2.6 使用For…Each处理集合和数组39
2.3 VBScript函式40
2.3.1 调用函式和子例程40
2.3.2 文档和语法41
2.3.3 字元串操作函式42
2.3.4 日期和时间函式45
2.4 与用户互动47
2.4.1 MsgBox()函式48
2.4.2 InputBox()函式49
2.4.3 用Wscript.Echo显示简单的文本信息51
2.5 高级VBScript话题52
2.5.1 错误处理52
2.5.2 过程:函式和子例程53
2.5.3 数组54
2.5.4 变数作用域56
2.6 如何进一步学习56
第3章 对象57
3.1 对象简介57
3.1.1 类和实例58
3.1.2 容器和集合58
3.1.3 对象命名59
3.2 在VBScript中使用对象60
3.2.1 Automation和文档档案61
3.2.2 属性和方法之间的区别61
3.2.3 嵌套对象62
3.2.4 释放对象63
3.2.5 使用集合63
3.3 在JScript中使用对象64
3.3.1 区分大小写64
3.3.2 使用集合64
3.4 用ActivePerl使用对象65
3.4.1 在WSH中运行Perl脚本66
3.4.2 Perl对象接口66
3.4.3 使用集合67
3.5 用ActivePython使用对象68
3.6 使用WScript对象69
3.7 查找并使用不常见的对象72
第4章 档案和注册表访问77
4.1 完成实际工作77
4.2 操作档案和资料夹77
4.2.1 Scripting.FileSystemObject78
4.2.2 操作档案和路径名82
4.2.3 Scripting.Drive对象86
4.2.4 Scripting.Folder对象88
4.2.5 Scripting.File对象93
4.3 读取和写入档案96
4.3.1 TextStream对象97
4.3.2 从档案读取文本99
4.3.3 把文本写入档案100
4.3.4 使用Stdin和Stdout104
4.3.5 读取二进制档案106
4.4 读取和写入XML110
4.4.1 一些XML基础知识111
4.4.2 读取XML档案117
4.4.3 创建XML或HTML档案119
4.5 操作程式和捷径121
4.5.1 WScript.Shell对象122
4.5.2 运行程式125
4.5.3 创建和修改捷径130
4.6 操作环境132
4.6.1 提取环境信息133
4.6.2 管理环境设定134
4.7 操作注册表136
4.7.1 查看注册表键和值137
4.7.2 在注册表中保存信息137
第5章 网路和印表机对象140
5.1 管理网路和印表机连线140
5.2 获取网路用户信息143
5.3 管理驱动器映射145
5.3.1 使用EnumNetworkDrives列出驱动映射145
5.3.2 添加驱动器映射147
5.3.3 删除驱动映射148
5.3.4 在脚本中设定映射149
5.4 管理网路印表机连线150
5.4.1 显示印表机信息151
5.4.2 连线到网路印表机152
5.4.3 重定向DOS会话印表机153
5.4.4 删除印表机集合154
5.4.5 设定默认印表机155
5.5 从脚本列印156
第6章 讯息和传真对象158
6.1 使用CDO从脚本传送Email158
6.2 CDO对象模型159
6.2.1 CDO.Message对象161
6.2.2 使用Field165
6.2.3 CDO.Message对象的Field167
6.2.4 CDO BodyParts集合168
6.2.5 CDO BodyPart对象168
6.2.6 ADO Stream对象171
6.2.7 CDO.Configuration对象171
6.3 用CDO传送讯息175
6.3.1 构建讯息175
6.3.2 添加附属档案178
6.3.3 包含图像的HTML讯息179
6.3.4 指定接收者和主题180
6.3.5 指定传送伺服器180
6.3.6 传送讯息181
6.3.7 综合套用182
6.4 从脚本发传真186
6.4.1 使用脚本传送传真189
6.4.2 获取关于传真的更多信息190
第7章 WMI192
7.1 WMI简介192
7.1.1 WMI功能193
7.1.2 命名空间193
7.1.3 远程管理Windows195
7.2 进行WMI连线197
7.2.1 WMI对象层级197
7.2.2 使用WbemScripting.SWbemLocator对象连线200
7.2.3 使用别名连线201
7.2.4 连线到本地计算机202
7.2.5 安全性和验证202
7.2.6 指定安全选项205
7.3 WMI集合和查询206
7.3.1 SWbemServices207
7.3.2 WQL查询208
7.3.3 SWbemObjectSet209
7.3.4 SWbemObject210
7.3.5 SWbemMethodSet和SWbemPropertySet211
7.4 Scriptomatic212
7.5 WMI示例213
7.5.1 收集系统信息214
7.5.2 管理印表机215
7.5.3 监控Windows服务包和热补丁215
7.5.4 管理服务和任务216
7.6 获取更多信息218
第8章 活动目录脚本编程接口219
8.1 管理用户目录219
8.1.1 ADSI的使用219
8.1.2 使用ADSI和WSH的局限性220
8.2 ADSI概念220
8.2.1 多重继承222
8.2.2 创建ADSI对象223
8.2.3 目录安全性225
8.2.4 确定容器和叶子之间的区别226
8.3 针对WinNT:提供者的ADSI228
8.3.1 IADs229
8.3.2 IADsCollection和IADsContainer231
8.3.3 操作ADSI集合232
8.3.4 IADsComputer和IADsComputer-Operations233
8.3.5 IADsDomain235
8.3.6 IADsFileService和IADsFileService-Operations237
8.3.7 IADsFileShare239
8.3.8 IADsGroup240
8.3.9 IADsMembers241
8.3.10 IADsNamespaces241
8.3.11 IADsPrintJob和IADsPrintJob-Operations242
8.3.12 IADsPrintQueue和IADsPrintQueue-Operations244
8.3.13 IADsService和IADsService-Operations246
8.3.14 IADsSession249
8.3.15 IADsUser250
8.4 IIS和Exchange251
8.5 管理活动目录252
8.6 活动目录对象254
8.6.1 RootDSE254
8.6.2 IADsO and IADsOU255
8.7 开发ADSI脚本256
8.8 EzAD Scriptomatic257
8.9 获取更多信息258
第9章 为计算机和网路管理部署脚本260
9.1 在现实世界中使用脚本260
9.2 使用WSF档案261
9.2.1 WSF档案格式引用262
9.2.2 用WSF档案提供线上帮助266
9.2.3 处理命令行参数267
9.2.4 包含多个脚本270
9.2.5 综合套用271
9.3 在网路上部署脚本274
9.4 使用IExpress创建简单的安装程式274
9.4.1 创建IExpress安装脚本或批处理档案277
9.4.2 处理用户账号控制278
9.4.3 提供一个Uninstall选项279
9.5 编写脚本来管理其他计算机280
9.5.1 远程脚本编程282
9.5.2 将脚本複製到多台计算机上282
9.6 脚本安全性问题284
9.6.1 脚本签名285
9.6.2 脚本编码器288
9.7 建立登录脚本288
9.7.1 用户配置档案登录脚本289
9.7.2 在Window 7和Vista上用于登录、退出和其他事件的脚本290
9.7.3 组策略登录、退出、启动和关闭脚本290
9.8 计画脚本以自动运行291
9.8.1 编写无人值守脚本292
9.8.2 给事件日誌传送讯息293
9.8.3 使用Task Scheduler调度脚本296
第二部分 命令行环境
第10章 CMD命令行299
10.1 命令提示符视窗299
10.2 运行CMD300
10.2.1 用管理员许可权打开一个命令提示符301
10.2.2 CMD选项302
10.2.3 关闭命令扩展303
10.3 命令行处理303
10.3.1 停止失控程式304
10.3.2 控制台程式输入和输出304
10.3.3 使用控制台视窗305
10.3.4 I/O重定向和管道305
10.3.5 在命令提示符视窗複製和贴上308
10.3.6 命令编辑和历史列表308
10.3.7 名称自动完成309
10.3.8 打开目录名称自动完成310
10.3.9 一行上的多条命令311
10.3.10 用括弧组合命令311
10.3.11 参数、逗号和引号312
10.3.12 转义特殊字元312
10.4 配置CMD命令312
10.4.1 AutoRun312
10.4.2 环境变数替换313
10.4.3 搜寻路径313
10.4.4 预定义环境变数和虚拟环境变数315
10.4.5 设定默认环境变数316
10.5 内建命令317
10.5.1 扩展命令327
10.5.2 使用dir命令列出档案327
10.5.3 用set命令设定变数330
10.5.4 使用if命令的条件处理331
10.5.5 使用for命令扫描档案332
10.6 获取更多信息335
第11章 批处理档案337
11.1 为何使用批处理档案337
11.2 创建并使用批处理档案337
11.3 批处理档案编程339
11.4 在批处理档案中显示信息340
11.5 参数替代340
11.6 参数编辑341
11.7 使用if的条件处理343
11.7.1 基本的if命令343
11.7.2 查看档案和资料夹343
11.7.3 检查一个程式的成功343
11.7.4 执行if之后的几条命令344
11.7.5 扩展的测试345
11.8 处理多个参数346
11.9 使用环境变数348
11.10 使用for命令处理多个项349
11.10.1 在for循环中使用多条命令350
11.10.2 延迟扩展352
11.11 使用批处理档案子例程353
11.12 提示要求输入353
11.13 有用的批处理档案技术354
11.13.1 处理命令行选项354
11.13.2 管理网路映射356
11.13.3 检查正确参数357
11.13.4 保存日誌档案357
第12章 Windows上的MS-DOS程式359
12.1 Windows上的MS-DOS程式359
12.1.1 虚拟DOS机359
12.1.2 MS-DOS和COMMAND-COM361
12.2 配置MS-DOS环境361
12.2.1 视窗和记忆体选项362
12.2.2 CONFIG.NT365
12.2.3 AUTOEXEC.NT367
12.2.4 MS-DOS环境变数367
12.3 MS-DOS和网路367
12.4 从MS-DOS列印368
12.4.1 列印重定向368
12.4.2 列印萤幕369
12.5 使用MS-DOS配置串列通信369
12.6 针对DOS使用特殊用途设备369
12.7 管理MS-DOS程式369
第13章 Windows命令行工具371
13.1 Windows命令行程式371
13.2 必备的命令行371
13.3 GUI捷径372
13.4 通用的shell程式374
13.4.1 findstr374
13.4.2 more377
13.4.3 tree378
13.4.4 xcopy378
13.5 档案管理工具380
13.5.1 attrib381
13.5.2 cacls382
13.6 管理能力工具385
13.6.1 driverquery385
13.6.2 runas385
13.6.3 tasklist386
13.6.4 taskkill388
13.6.5 sc388
13.7 网路工具390
13.7.1 ipconfig390
13.7.2 net392
13.7.3 netstat399
13.7.4 nslookup400
13.7.5 ping402
13.7.6 tracert403
13.8 获取更多工具404
第三部分 Windows PowerShell
第14章 Windows PowerShell简介405
14.1 什幺是Windows PowerShell405
14.1.1 一个面向对象的命令Shell405
14.1.2 基于.NET Framework407
14.1.3 一个可扩展的环境408
14.2 获取Windows PowerShell408
14.3 PowerShell环境410
14.4 PowerShell命令提示符410
14.4.1 命令行编辑411
14.4.2 複製和贴上412
14.4.3 暂停输出和停止一个失控程式412
14.4.4 命令行语法412
14.5 Cmdlet、对象和脚本414
14.6 获取帮助416
14.7 提示完整的命令417
14.8 别名417
14.8.1 如何获取别名列表418
14.8.2 如何定义一个新的别名418
14.9 导航目录和其他位置418
14.10 PowerShell安全性419
14.10.1 PowerShell脚本和用户账户控制419
14.10.2 脚本执行策略420
14.11 PowerShell配置档案421
第15章 PowerShell编程423
15.1 Windows PowerShell程式语言423
15.2 Windows PowerShell语法423
15.3 注释424
15.4 变数和类型424
15.4.1 字面值425
15.4.2 对象方法和属性426
15.4.3 对象构造器427
15.4.4 字元串插值427
15.4.5 特殊字元428
15.4.6 Here-Strings428
15.4.7 释放变数428
15.4.8 预定义的变数429
15.4.9 数组430
15.4.10 常量434
15.5 表达式434
15.5.1 比较数组435
15.5.2 字元串运算符437
15.5.3 &(执行)运算符439
15.5.4 运算符优先权439
15.5.5 赋值运算符440
15.5.6 语句值441
15.5.7 强制转型441
15.5.8 传引用442
15.5.9 散列表442
15.6 流程控制444
15.6.1 if444
15.6.2 while445
15.6.3 do…while和do…until445
15.6.4 for445
15.6.5 foreach446
15.6.6 switch447
15.6.7 break449
15.6.8 continue449
15.6.9 程式块450
15.7 异常处理450
15.7.1 trap450
15.7.2 try/catch/finally451
15.7.3 throw451
15.8 定义函式452
15.8.1 函式参数452
15.8.2 函式作用域454
15.8.3 Dot-Source运算符454
15.8.4 变数作用域455
15.8.5 管道函式和过滤器456
15.8.6 Splatting457
15.9 使用.NET API458
15.9.1 调用静态成员函式458
15.9.2 操作字元串459
15.9.3 操作日期和时间460
15.9.4 转换值462
15.9.5 数学函式462
第16章 使用PowerShell464
16.1 现实世界的PowerShell464
16.2 命令行技术465
16.2.1 生成对象465
16.2.2 过滤466
16.2.3 採取实际行动468
16.3 格式化Cmdlet输出468
16.4 操作档案和资料夹469
16.4.1 查看一个档案是否存在473
16.4.2 从档案读取文本473
16.4.3 向档案写入文本474
16.4.4 根据大小识别档案474
16.5 创建有用的脚本475
16.5.1 加注释475
16.5.2 命令行处理575
16.5.3 编写模组476
16.5.4 把异常处理作为一种退出策略477
16.6 使用散列表478
16.7 PowerShell集成脚本环境479
16.7.1 启动PowerShell ISE479
16.7.2 配置ISE480
16.7.3 创建和编辑脚本480
16.7.4 在ISE中运行脚本481
16.7.5 设定断点和单步执行482
16.7.6 互动地检查和修改变数482
16.7.7 有条件的断点483
16.8 远程和后台PowerShell483
16.9 如何继续学习483
附录
附录A VBScript参考485
附录B CMD和批处理档案语言参考495
附录C 命令行程式参考503