Windows PowerShell应用手册
Windows PowerShell应用手册
Lee Holmes
赵松德, 王英群 译
出版时间:2009年04月
页数:546
Windows PowerShell团队开发人员Lee Holmes在本书中提供了上百个测试过的脚本,让你可以使用这个新的工具。本书提供了150个解决方案,并结合一个简洁的基于Windows PowerShell 脚本语言和环境的任务进行介绍。当你遇到棘手的问题或需要一个快速解决方案时,可以快速地查找相关的指导。

Lee Holmes为你提供了实用的工具和忠告,使你提高工作效率。 你将能够解决所有问题,从自动执行日常任务、使用文件、事件日志、其他形式的结构化数据,到管理用户和复杂的Windows网络资源。每个解决方案都包含一些代码,并讲解了代码是如何工作的,以便你可以将该解决方案应用于类似的任务中。

本书包括:

* 管道、变量、对象、循环和流控制、字符串和非结构化的文本、计算和数学计算。
* 简单文件、结构化文件、支持Internet的脚本、列表、数组、哈希表、错误管理、环境安全意识、脚本签名。
* 文件和目录、注册表操作、比较数据、事件日志、进程cmdlet、服务cmdlet、活动目录、企业计算机管理。

附录包括PowerShell语言快速参考和对管理员来说有用的.NET、WMI和COM对象的介绍。那些管理Microsoft Exchange 2007和系统中心Operations Manager(以前的MOM)的管理员会发现有专门介绍相关内容的章节。

“Lee是PowerShell的核心开发人员,也是PowerShell社区中主要的问题解答者。本书提供解决实际问题的策略和方法,值得每一位PowerShell用户收藏。 ”
——Jeffrey Snover,Windows PowerShell架构师

“本书填补了PowerShell书库中最大的空缺。虽然有许多书(包括我的书)谈论到 PowerShell, 但是本书是第一本真正把重点放在应用PowerShell并针对现实问题提供一个解决方案的书。本书值得每个人收藏。”
——Bruce Payette,PowerShell语言设计者和畅销书《Windows PowerShell in Action》作者
  1. 前言
  2. 第一部分 教程
  3. 教程 Windows PowerShell使用指南
  4. 简介
  5. 一个交互式的shell
  6. 结构化命令
  7. 与对象深层次的集成
  8. 作为一流的系统管理员
  9. 可组合命令
  10. 防止误操作的技术
  11. 常用的发现命令
  12. 无处不在的脚本
  13. 特殊开发
  14. 技术的桥梁
  15. 通过提供程序导航命名空间
  16. 更多的内容
  17. 第二部分 基础知识
  18. 第1章 Windows PowerShell交互界面
  19. 1.0 绪论
  20. 1.1 运行程序、脚本和已有的工具
  21. 1.2 运行PowerShell命令
  22. 1.3 自定义shell、配置文件与提示符
  23. 1.4 查找实现指定任务的命令
  24. 1.5 获得命令帮助
  25. 1.6 编程: 搜索帮助
  26. 1.7 在PowerShell之外调用PowerShell脚本
  27. 1.8 编程:保持批处理文件修改的环境变量
  28. 1.9 获取系统日期与时间
  29. 1.10 检查最后运行命令的状态
  30. 1.11 度量命令执行时间
  31. 1.12 定制shell来提升工作效率
  32. 1.13 编程:学习常用命令的别名
  33. 1.14 使用与管理控制台历史
  34. 1.15 将命令的输出保存到文件中
  35. 1.16 向文件的结尾处加入信息
  36. 1.17 记录你的会话全文
  37. 1.18 将某一项的属性显示成列表
  38. 1.19 将某一项的属性显示成表格
  39. 1.20 管理命令的错误输出
  40. 1.21 配置调试、校验和处理输出
  41. 1.22 通过附加单元扩展PowerShell
  42. 1.23 使用控制台文件加载保存snapin
  43. 第2章 管道
  44. 2.0 简介
  45. 2.1 过滤列表项或命令输出项
  46. 2.2 编程:简化多数Where-Object 过滤
  47. 2.3 编程:交互式过滤对象
  48. 2.4 处理列表或命令输出的每一项
  49. 2.5 自动化数据密集型任务
  50. 第3章 变量与对象
  51. 3.0 简介
  52. 3.1 在变量中存储信息
  53. 3.2 访问环境变量
  54. 3.3 控制访问和变量的范围与其他项
  55. 3.4 使用.NET 对象
  56. 3.5 创建一个.NET对象的实例
  57. 3.6 编程:创建对象的实例
  58. 3.7 快速输入较长的类名
  59. 3.8 使用COM 对象
  60. 3.9 了解类型和对象
  61. 3.10 获得类和对象详细文档
  62. 3.11 向对象添加自定义的方法和属性
  63. 3.12 向类添加自定义的方法和属性
  64. 第4章 循环与流程控制
  65. 4.0 简介
  66. 4.1 通过比较和逻辑操作做出决定
  67. 4.2 使用条件语句控制脚本流程
  68. 4.3 使用switch管理条件语句
  69. 4.4 使用循环
  70. 4.5 添加暂停或延迟
  71. 第5章 字符串与非结构化文本
  72. 5.0 简介
  73. 5.1 创建字符串
  74. 5.2 创建一个多行或格式化的字符串
  75. 5.3 在字符串中放置特殊字符
  76. 5.4 向字符串中插入动态信息
  77. 5.5 禁止字符串包含动态信息
  78. 5.6 在字符串中插入格式化的信息
  79. 5.7 根据文本或模式在字符串中查找
  80. 5.8 替换字符串中的文本
  81. 5.9 字符串大、小写转换
  82. 5.10 去掉字符串中的空格
  83. 5.11 格式化日期的输出
  84. 5.12 转换文本流为对象
  85. 5.13 生成大的报告和文本流
  86. 第6章 计算和数学计算
  87. 6.0 简介
  88. 6.1 执行简单的算法
  89. 6.2 执行复杂的算法
  90. 6.3 度量一个列表的统计属性
  91. 6.4 使用二进制数
  92. 6.5 简化管理用的常量
  93. 6.6 在不同的进制间转换数字
  94. 第三部分 常见任务
  95. 第7章 简单文件
  96. 7.0 简介
  97. 7.1 获取文件的内容
  98. 7.2 搜索文件中的文本
  99. 7.3 分析和管理基于文本的日志
  100. 7.4 分析和管理二进制文件
  101. 7.5 创建临时文件
  102. 7.6 搜索和替换文件中的文本
  103. 第8章 结构化文件
  104. 8.0 简介
  105. 8.1 访问XML文件中的信息
  106. 8.2 对 XML 文件执行 XPath 查询
  107. 8.3 修改XML文件中的信息
  108. 8.4 轻松导入和导出结构化数据
  109. 8.5 将一个命令的输出存储到 CSV 文件
  110. 8.6 从 CSV 文件中导入结构化的数据
  111. 8.7 使用 Excel 管理命令输出
  112. 第9章 支持Internet的脚本
  113. 9.0 简介
  114. 9.1 从Internet下载一个文件
  115. 9.2 从Internet下载一个Web页面
  116. 9.3 编程:获得页面中的超级链接
  117. 9.4 编程:调用Web服务
  118. 9.5 将命令的输出生成一个Web页面
  119. 9.6 编程:发送电子邮件
  120. 9.7 编程:与Internet协议交互
  121. 第10章 代码复用
  122. 10.0 简介
  123. 10.1 编写一个脚本
  124. 10.2 编写一个函数
  125. 10.3 编写一个脚本块
  126. 10.4 从脚本、函数、脚本块返回数据
  127. 10.5 将常用的函数放到库文件中
  128. 10.6 脚本、 函数或脚本块的访问参数
  129. 10.7 访问管道输入
  130. 10.8 用命令关键字(Cmdlet Keywords)编写面向管道的脚本
  131. 10.9 编写一个面向管道的函数
  132. 第11章 列表、数组和哈希表
  133. 11.0 简介
  134. 11.1 创建数组或项的列表
  135. 11.2 创建交错或多维数组
  136. 11.3 访问数组中的元素
  137. 11.4 访问数组的每个元素
  138. 11.5 对数组或列表中的项进行排序
  139. 11.6 确定数组是否包含某项
  140. 11.7 合并数组
  141. 11.8 从数组中查找匹配一个值的项
  142. 11.9 从数组中移出元素
  143. 11.10 从数组中查找大于或小于一个值的项
  144. 11.11 使用ArrayList类完成高级的数组任务
  145. 11.12 创建哈希表或关联数组
  146. 11.13 根据键或值对哈希表排序
  147. 第12章 用户交互
  148. 12.0 简介
  149. 12.1 读取用户输入一行
  150. 12.2 读取用户输入的按键
  151. 12.3 编程:向用户显示一个菜单
  152. 12.4 给用户显示输出和消息
  153. 12.5 为长时间运行的任务提供进度更新
  154. 12.6 编写支持区域性的脚本
  155. 12.7 编程:采用交替的区域性设置调用脚本块
  156. 12.8 主机的用户界面的访问功能
  157. 12.9 编程: 向你的脚本中添加一个图形用户界面
  158. 第13章 跟踪和错误管理
  159. 13.0 简介
  160. 13.1 查看由某一命令生成的错误
  161. 13.2 处理警告、 错误和终止错误
  162. 13.3 输出警告、错误和终止错误
  163. 13.4 调试脚本
  164. 13.5 收集脚本或命令的详细的跟踪信息
  165. 13.6 编程:分析脚本的性能的配置文件
  166. 第14章 掌握环境
  167. 14.0 简介
  168. 14.1 查看和修改环境变量
  169. 14.2 关于你的命令调用的访问信息
  170. 14.3 编程:研究请求信息变量
  171. 14.4 找到脚本的名称
  172. 14.5 找到你的脚本的位置
  173. 14.6 查找常见的系统路径的位置
  174. 14.7 编程:搜索 Windows 开始菜单
  175. 14.8 获取当前位置
  176. 14.9 安全地生成程序文件路径
  177. 14.10 与 PowerShell 的全局环境进行交互
  178. 第15章 Windows PowerShell的扩展
  179. 15.0 简介
  180. 15.1 访问WMI数据
  181. 15.2 编程:确定可用到 WMI 筛选器的属性
  182. 15.3 编程:搜索WMI类
  183. 15.4 使用 .NET 来执行高级的WMI 任务
  184. 15.5 将一个VBScript WMI脚本转换为PowerShell
  185. 15.6 使用 COM 脚本接口自动化程序
  186. 15.7 编程:查询SQL数据源
  187. 15.8 访问 Windows 性能计数器
  188. 15.9 编程:调用Windows系统API
  189. 15.10 编程: 添加C#代码到PowerShell 脚本中
  190. 15.11 访问 .NET SDK 库
  191. 15.12 创建你自己的 PowerShell Cmdlet
  192. 15.13 添加 PowerShell 脚本到你自己的程序
  193. 第16章 安全和脚本签名
  194. 16.0 简介
  195. 16.1 通过执行策略启用脚本
  196. 16.2 PowerShell 脚本或格式文件签名
  197. 16.3 编程: 创建一个自签名的证书
  198. 16.4 管理企业中的 PowerShell 安全性
  199. 16.5 验证 PowerShell 脚本的数字签名
  200. 16.6 安全地处理敏感信息
  201. 16.7 安全地要求用户名和密码
  202. 16.8 编程: 作为另一个用户启动一个进程
  203. 16.9 在磁盘上安全地存储凭据
  204. 16.10 访问用户和计算机证书
  205. 16.11 编程: 搜索证书存储区
  206. 第四部分 管理员任务
  207. 第17章 文件和目录
  208. 17.0 简介
  209. 17.1 查找一个特定日期之前修改的所有文件
  210. 17.2 清除或移动文件
  211. 17.3 管理与改变文件属性
  212. 17.4 获取目录中的文件列表
  213. 17.5 使用匹配模式查找文件
  214. 17.6 管理包含特殊字符的文件
  215. 17.7 获取磁盘使用情况信息
  216. 17.8 确定当前的位置
  217. 17.9 监视文件内容变更
  218. 17.10 编程:获取一个文件的MD5或SHA1哈希值
  219. 17.11 建立目录
  220. 17.12 删除文件或目录
  221. 17.13 文件或目录重命名
  222. 17.14 移动文件或目录
  223. 17.15 获取文件或目录的访问控制列表
  224. 17.16 设置文件或目录的访问控制列表
  225. 17.17 将扩展的文件属性添加到文件
  226. 17.18 编程: 创建文件系统硬链接
  227. 17.19 编程:创建ZIP文档
  228. 第18章 Windows注册表
  229. 18.0 简介
  230. 18.1 注册表导航
  231. 18.2 查看一个注册表项
  232. 18.3 修改或删除一个注册表键值
  233. 18.4 创建一个注册表键值
  234. 18.5 删除注册表项
  235. 18.6 将站点添加到IE浏览器的安全域中
  236. 18.7 修改IE浏览器设置
  237. 18.8 编程:搜索Windows注册表
  238. 18.9 获取某个注册表项的访问控制列表
  239. 18.10 设置一个注册表项的访问控制列表
  240. 18.11 使用远程计算机的注册表
  241. 18.12 编程:从远程计算机获取注册表项
  242. 18.13 编程:获取远程注册表项的属性
  243. 18.14 编程:设置远程注册表项的属性
  244. 18.15 程序的注册表设置
  245. 第19章 数据比较
  246. 19.0 简介
  247. 19.1 比较两个命令的输出
  248. 19.2 确定两个文件之间的差异
  249. 19.3 验证文件集的完整性
  250. 第20章 事件日志
  251. 20.0 简介
  252. 20.1 列出所有事件日志
  253. 20.2 从事件日志中获取最新项
  254. 20.3 使用特定的文本查找事件日志项
  255. 20.4 检索一个特定的事件日志项
  256. 20.5 根据频率查找事件日志记录
  257. 20.6 备份事件日志
  258. 20.7 创建或删除事件日志
  259. 20.8 写入事件日志
  260. 20.9 访问远程计算机的事件日志
  261. 第21章 进程
  262. 21.0 简介
  263. 21.1 列出当前运行的进程
  264. 21.2 启动一个进程
  265. 21.3 停止一个进程
  266. 21.4 编程:调用远程计算机上的一个PowerShell表达式
  267. 第22章 系统服务
  268. 22.0 简介
  269. 22.1 列出所有运行的服务
  270. 22.2 管理一个正在运行的服务
  271. 22.3 访问在远程计算机上的服务
  272. 第23章 活动目录
  273. 23.0 简介
  274. 23.1 测试本地安装的活动目录脚本
  275. 23.2 创建组织单元
  276. 23.3 获取组织单元的属性
  277. 23.4 修改组织单元的属性
  278. 23.5 获取一个活动目录容器的子集
  279. 23.6 创建用户账户
  280. 23.7 编程:批量导入活动目录用户
  281. 23.8 搜索用户账户
  282. 23.9 获取并列出用户账户的属性
  283. 23.10 修改用户账户的属性
  284. 23.11 创建一个安全组或分布组
  285. 23.12 搜索一个安全组或分布组
  286. 23.13 获取一个组的属性
  287. 23.14 查找用户组的所有者
  288. 23.15 修改安全组或分布组的属性
  289. 23.16 将用户添加到安全组或分布组
  290. 23.17 从安全组或分布组中删除用户
  291. 23.18 列出用户的组成员身份
  292. 23.19 列出一组的所有成员
  293. 23.20 列出一个组织单元的所有用户
  294. 23.21 搜索计算机账户
  295. 23.22 获取并列出一台计算机账户的属性
  296. 第24章 企业级计算机管理
  297. 24.0 简介
  298. 24.1 编程: 列出用户登录或注销的脚本
  299. 24.2 编程: 列出计算机启动或关机脚本
  300. 24.3 启用或禁用Windows防火墙
  301. 24.4 打开或关闭Windows防火墙中的端口
  302. 24.5 “编程: 列出所有已安装的软件”
  303. 24.6 卸载应用程序
  304. 24.7 管理计算机上的计划任务
  305. 24.8 检索打印机信息
  306. 24.9 检索打印机队列统计信息
  307. 24.10 管理打印机和打印队列
  308. 24.11 确定是否安装了补丁程序
  309. 24.12 编程: 汇总系统信息
  310. 24.13 续订动态主机配置协议租约
  311. 24.14 分配一个静态 IP 地址
  312. 24.15 列出计算机的所有IP地址
  313. 24.16 列出网络适配器的属性
  314. 第25章 管理Exchange 2007通信服务器
  315. 25.0 简介
  316. 25.1 尝试使用 Exchange 管理shell程序
  317. 25.2 自动执行向导任务
  318. 25.3 管理Exchange用户
  319. 25.4 管理邮箱
  320. 25.5 管理分发组
  321. 25.6 管理传输规则
  322. 25.7 管理Outlook Web Access
  323. 第26章 管理操作管理器2007服务器
  324. 26.0 简介
  325. 26.1 体验命令shell程序
  326. 26.2 管理操作管理器代理
  327. 26.3 计划维护窗口
  328. 26.4 获取、安装和卸载管理包
  329. 26.5 启用或禁用规则
  330. 26.6 列出并启动任务
  331. 26.7 管理警报
  332. 第五部分 参考资源
  333. 附录A PowerShell语言和环境
  334. 附录B 正则表达式参考
  335. 附录C PowerShell自动变量
  336. 附录D 标准PowerShell动词
  337. 附录E 选定的.NET类和它们的使用
  338. 附录F WMI参考
  339. 附录G 选定的COM对象和它们的使用
  340. 附录H .NET字符串格式
  341. 附录I .NET日期格式
书名:Windows PowerShell应用手册
作者:Lee Holmes
译者:赵松德, 王英群 译
国内出版社:机械工业出版社
出版时间:2009年04月
页数:546
书号:978-7-111-25362-4
原版书出版商:O'Reilly Media
Lee Holmes
 
Lee Holmes是Microsoft Windows PowerShell小组的开发人员,自从PowerShell发布Beta版本之后,一直是相关的信息的权威发布者。 他拥有大量的使用Windows PowerShell的经验并将这些经验在讨论中整理成“ 如何 ”和“为什么”。Lee通过新闻、 邮件群发和博客参与 PowerShell 和管理社区的讨论。面对各种管理员和用户遇到的问题,他表现出了敏锐的洞察力。
 
 
本书封面上的动物是一种盒龟(box turtle)。这种龟主要产于北美洲,主要分布在美国和墨西哥的北部地区。
这种雄龟平均长度大约是6英寸长并且有红色眼睛,雌龟比雄龟短一些并有黄色的眼睛。盒龟在未成年期间什么都吃,但是长大后主要食草。如果盒龟遇到危险,它的头、尾巴和肢体会缩回壳里。它们通常会在以出生地为圆心,半径一公里的范围内活动,很少会离开。在交配期间,雄龟有时通过互相推挤来赢取雌龟的注意。在交媾时,雄龟会身体向后翻倒,而无法自我在翻过身来,有可能会被饿死。
虽然盒龟能活到超过100年,但是由于大陆的开发与修路,它们的栖息地正受到严重威胁。在漫长的冬眠期间,盒龟需要宽松的、潮湿土壤来下蛋和挖洞。 盒龟也非常易受疾病的影响。专家强烈建议不要将盒龟从他们的栖息地迁出,因为那样不仅将打乱它们繁殖的机会,还会使盒龟变的压力大并且迅速灭亡。
购买选项
定价:89.00元
书号:978-7-111-25362-4
出版社:机械工业出版社