新書推薦:
《
偿还:债务与财富的阴暗面
》
售價:NT$
347.0
《
清华大学藏战国竹简校释(壹):《命训》诸篇
》
售價:NT$
408.0
《
封建社会农民战争问题导论(光启文库)
》
售價:NT$
296.0
《
虚弱的反攻:开禧北伐
》
售價:NT$
429.0
《
泰山:一种中国信仰专论(法国汉学经典译丛)
》
售價:NT$
380.0
《
花外集斠箋
》
售價:NT$
704.0
《
有兽焉.8
》
售價:NT$
305.0
《
大学问·明清经济史讲稿
》
售價:NT$
330.0
編輯推薦:
PowerShell既是脚本语言,也是执行系统管理任务的shell,可用于控制和自动化IT系统的方方面面。本书由五次荣获微软MVP的PowerShell行家亚当·伯特伦倾情著述,教你使用PowerShell这一省时利器,实现系统管理任务自动化。- 组合命令、控制流、处理错误、编写脚本、远程运行脚本,并使用PowerShell测试框架Pester测试脚本- 解析XML和JSON等结构化数据,使用常见服务编写实际可用的服务器清点脚本- 设计并构建PowerShell模块,证明PowerShell并不局限于临时脚本编程- 使用PowerShell完全自动部署Windows- 仅用几个ISO文件在Hyper-V主机上构建完整的AD林- 仅用几行代码创建任意数量的Web服务器和SQL服务器
內容簡介:
本书通过大量实例带领系统管理员将众多的日常任务自动化,构建自定义工具,充分利用神通广大的PowerShell。全书分为三大部分。部分概述PowerShell的基本功能和用法,以及一些基本的编程概念,如变量、对象、函数、模块等。第二部分详述日常任务的自动化,内容包括如何解析结构化数据,以及如何构建服务器管理工具。第三部分介绍如何构建模块,内容涉及优秀模块的设计策略,以及将测试服务器环境自动化,预置Hyper-V虚拟机,安装操作系统,部署和配置SQL服务器等。
關於作者:
亚当·伯特伦(Adam Bertram),微软MVP,拥有20余年信息技术从业经验,专注于系统管理、DevOps、自动化技术等领域,创办了流行信息技术知识服务平台TechSnips,在Pluralsight和LinkedIn的在线学习平台上讲授PowerShell课程,惠及数万学习者。【译者介绍】安道,专注于现代计算机技术书的翻译,译有《流畅的Python》《Flask Web开发》《Python网络编程攻略》《Ruby on Rails教程》等书。
目錄 :
第 一部分 基础知识第 1 章 上手体验 21.1 打开PowerShell控制台 21.2 使用DOS命令 31.3 探索PowerShell命令 41.4 获取帮助 61.4.1 显示文档 61.4.2 学习一般主题 71.5 更新文档 81.6 小结 9第 2 章 PowerShell基本概念 102.1 变量 102.1.1 显示及修改变量 102.1.2 用户定义的变量 112.1.3 自动变量 132.2 数据类型 162.2.1 布尔值 162.2.2 整数和浮点数 162.2.3 字符串 182.3 对象 202.3.1 查看属性 202.3.2 使用Get-Member cmdlet 212.3.3 调用方法 222.4 数据结构 232.4.1 数组 232.4.2 ArrayList 262.4.3 哈希表 272.5 自定义对象 302.6 小结 31第 3 章 组合命令 323.1 启动一个Windows服务 323.2 使用管道 333.2.1 通过管道在命令间传递对象 333.2.2 通过管道在命令间传递数组 333.2.3 参数绑定 343.3 编写脚本 363.3.1 设置执行策略 373.3.2 PowerShell脚本编程 383.4 小结 40第 4 章 控制流 414.1 理解控制流 414.2 使用条件语句 424.2.1 用运算符构建表达式 424.2.2 if语句 434.2.3 else语句 444.2.4 elseif语句 444.2.5 switch语句 464.3 使用循环 474.3.1 foreach循环 474.3.2 for循环 504.3.3 while循环 514.3.4 do/while循环和do/until循环 514.4 小结 52第 5 章 错误处理 535.1 了解异常和错误 535.2 处理非终止性错误 545.3 处理终止性错误 565.4 探索$Error自动变量 575.5 小结 58第 6 章 编写函数 596.1 函数与cmdlet 596.2 定义函数 606.3 为函数添加参数 616.3.1 创建简单的参数 616.3.2 参数属性:Mandatory 626.3.3 参数的默认值 636.3.4 为参数添加验证属性 636.4 接受管道输入 656.4.1 再添加一个参数 656.4.2 让函数支持管道 666.4.3 添加process块 676.5 小结 67第 7 章 探索模块 687.1 探索默认模块 687.1.1 查找会话中的模块 687.1.2 查找计算机中的模块 697.1.3 导入模块 717.2 PowerShell模块的构成 727.2.1 .psm1文件 727.2.2 模块清单文件 737.3 使用自定义模块 747.3.1 查找模块 747.3.2 安装模块 757.3.3 卸载模块 767.4 自己创建模块 767.5 小结 77第 8 章 远程运行脚本 788.1 使用脚本块 788.1.1 使用Invoke-Command在远程系统中运行代码 808.1.2 在远程计算机中运行本地脚本 818.1.3 远程使用本地变量 818.2 使用会话 838.2.1 新建会话 838.2.2 在会话中调用命令 848.2.3 打开交互式会话 858.2.4 断开及重新连接会话 858.2.5 使用Remove-PSSession删除会话 878.3 解读PowerShell远程处理身份验证 888.3.1 双跃点问题 888.3.2 使用CredSSP绕过双跃点问题 898.4 小结 91第 9 章 使用Pester进行测试 929.1 Pester简介 929.2 Pester基础知识 939.2.1 Pester文件 939.2.2 describe块 939.2.3 context块 949.2.4 it块 949.2.5 断言 959.3 执行Pester测试 969.4 小结 96第二部分 日常任务自动化第 10 章 解析结构化数据 9910.1 CSV文件 9910.1.1 读取CSV文件 9910.1.2 创建CSV文件 10310.1.3 项目1:编写计算机清点报告 10410.2 Excel电子表格 10710.2.1 创建Excel电子表格 10810.2.2 读取Excel电子表格 10910.2.3 向Excel电子表格中添加行 11010.2.4 项目2:创建Windows服务监控工具 11110.3 JSON数据 11210.3.1 读取JSON 11310.3.2 创建JSON字符串 11410.3.3 项目3:查询并解析REST API 11510.4 小结 118第 11 章 AD任务自动化 11911.1 环境要求 11911.2 安装ActiveDirectory PowerShell模块 12011.3 查询和筛选AD对象 12011.3.1 筛选对象 12111.3.2 返回单个对象 12211.3.3 项目4:查找30天内未修改密码的用户账户 12311.4 创建和修改AD对象 12411.4.1 用户和计算机 12411.4.2 组 12611.4.3 项目5:创建员工配置脚本 12711.5 与其他数据源同步 13011.5.1 项目6:编写同步脚本 13111.5.2 映射数据源属性 13111.5.3 定义返回相似属性的函数 13211.5.4 在AD中查找匹配对象 13411.5.5 修改AD属性 13511.6 小结 136第 12 章 Azure任务自动化 13712.1 环境要求 13712.2 Azure身份验证 13712.2.1 创建服务主体 13812.2.2 使用Connect-AzAccount实现非交互式身份验证 14012.3 创建Azure虚拟机及所有依赖 14012.3.1 创建资源组 14112.3.2 创建网络栈 14112.3.3 创建存储账户 14312.3.4 创建操作系统映像 14312.3.5 收尾工作 14512.3.6 自动创建虚拟机 14612.4 部署Azure Web应用 14612.5 部署Azure SQL数据库 14712.5.1 创建Azure SQL服务器 14812.5.2 创建Azure SQL数据库 14912.5.3 创建SQL服务器防火墙规则 14912.5.4 测试SQL数据库 15012.6 小结 151第 13 章 Amazon Web Services任务自动化 15213.1 环境要求 15213.2 AWS身份验证 15213.2.1 使用根用户验证身份 15313.2.2 创建IAM用户和角色 15413.2.3 验证IAM用户的身份 15613.3 创建一个AWS EC2实例 15613.3.1 虚拟私有云 15713.3.2 互联网网关 15813.3.3 路由 15813.3.4 子网 15913.3.5 为EC2实例分配一个AMI 16013.3.6 锦上添花 16113.4 部署Elastic Beanstalk应用 16213.4.1 创建应用 16313.4.2 部署包 16513.5 在AWS中创建SQL Server数据库 16713.6 小结 170第 14 章 创建服务器清点脚本 17114.1 环境要求 17114.2 创建项目脚本 17114.3 定义终输出 17214.4 探索脚本输入 17214.5 查询单台服务器 17314.6 提前规划:合并不同类型的信息 17414.7 查询远程文件 17614.8 查询Windows Management Instrumentation 17814.8.1 磁盘空闲空间 17914.8.2 操作系统信息 18014.8.3 内存 18114.8.4 网络信息 18314.9 Windows服务 18614.10 清理和优化脚本 18814.11 小结 190第三部分 自制模块第 15 章 配置虚拟环境 19415.1 环境要求 19415.2 创建模块 19515.2.1 创建空模块 19615.2.2 创建模块清单文件 19615.2.3 函数名称使用固定的前缀 19615.2.4 导入新模块 19715.3 自动配置虚拟环境 19715.3.1 虚拟交换机 19815.3.2 虚拟机 19915.3.3 虚拟硬盘 20115.4 使用Pester测试新定义的函数 20515.5 小结 205第 16 章 安装操作系统 20616.1 环境要求 20616.2 部署操作系统 20716.2.1 创建VHDX文件 20716.2.2 依附虚拟机 20916.3 自动部署操作系统 21016.4 在磁盘中存储加密凭据 21116.5 PowerShell Direct功能 21316.6 Pester测试 21416.7 小结 215第 17 章 部署AD 21617.1 环境要求 21617.2 创建AD林 21617.3 构建林 21717.3.1 将安全字符串保存到磁盘中 21717.3.2 自动创建林 21817.3.3 填充域 22017.4 编写并运行Pester测试 22417.5 小结 226第 18 章 创建并配置SQL服务器 22718.1 环境要求 22718.2 创建虚拟机 22718.3 安装操作系统 22818.4 添加Windows无人值守应答文件 22818.5 将SQL服务器添加到域中 22918.5.1 安装SQL Server 23118.5.2 将文件复制到SQL服务器中 23118.5.3 运行SQL Server安装程序 23218.6 自动安装SQL Server 23318.7 运行Pester测试 23618.8 小结 237第 19 章 重构代码 23819.1 回头看New-PowerLabSqlServer函数 23819.2 使用参数集 24219.3 小结 245第 20 章 创建并配置IIS Web服务器 24620.1 环境要求 24620.2 安装和设置 24620.3 从头开始构建Web服务器 24820.4 WebAdministration模块 24820.5 为网站配置SSL 25120.6 小结 254