30天精通 PowerShell Scripting:從撰寫到整理,掌握自動化工作流程 (第二版) (Learn PowerShell Scripting in a Month of Lunches, 2/e)

James Petty, Don Jones, Jeffery Hicks 著 林班侯 譯

相關主題

商品描述

你可以運用PowerShell命令稿,將Windows、Linux與macOS上幾乎所有管理任務予以自動化。本書將帶你循序學會這一切!只需27個可以在午餐時間讀完的精簡課程,你就會學到如何建立、組織、測試和分享命令稿與工具,為你的日常工作節省無數個小時。

這是專為 PowerShell 自動化與工具建置打造的實作指南,且內容已更新至新版 PowerShell。這本經典暢銷書將帶你學會如何撰寫高效命令稿、找出並清除臭蟲、同時將工具編排成程式庫。在學習過程中,你還能獲得管理與強化 Linux、macOS 系統安全的實用祕訣。

內容包括:
◎設置穩定可靠的命令稿撰寫環境
◎設計函式與命令稿
◎有效地運用管道
◎分享及公布命令稿
適合具備 PowerShell 基礎到中階程度的讀者。

業界專家 誠摯推薦!!-----------------------------------------

「最佳入門讀物!從建立管道、Pester 測試到數位簽章,內容面面俱到!」
—— Chrissy LeMaire,Microsoft MVP、《dbatools》作者

「一本傑出的指南!更新至 PowerShell 7真的大有必要,而且做得非常好。」
—— Joe Houghes,Microsoft MVP,Pure Storage

「每一篇都淺顯易懂,並在前一篇的基礎上循序深入。我推薦這本書給所有使用 PowerShell 的人!」
—— Steven Judd,Tenstreet

「當你想從單純執行指令,進階成為能撰寫命令稿時,本書就是你最理想的下一步!」
—— Glen Thompson,Mainfreight

作者簡介

James Petty 是 PowerShell.org 與 The DevOps Collective 的執行長,同時也是微軟最有價值專家(Microsoft MVP)。
Don Jones 與 Jeffery Hicks 為本書第一版的作者,長期致力於 PowerShell 教學與推廣。
本書的技術編輯為Wes Stahler。

目錄大綱

【Part 1】
1 在開始之前
1.1 何謂打造工具?
1.2 這本書適合你嗎?
1.3 你需要為閱讀本書準備些什麼
1.4 如何利用這本書
1.5 期待
1.6 如何尋求協助
總結

2 設置你的指令稿撰寫環境
2.1 作業系統
2.2 PowerShell
2.3 管理權限與執行策略
2.4 命令稿編輯器
2.5 我們的實驗用環境
2.6 範例程式碼
2.7 輪到你練習了
總結

3 PowerShell 會做什麼?
3.1 一種工具做一件事
3.2 為工具取個名字
3.3 為參數命名
3.4 產生輸出
3.5 不要只做假設
3.6 避免創意
總結

4 回顧:參數綁定與 PowerShell 管道
4.1 作業系統
4.2 奧妙都在參數裡
4.3 管道:ByValue
4.4 ByPropertyName
總結

5 命令稿撰寫語言:速成課程
5.1 比較
5.2 If 結構
5.3 ForEach 結構
5.4 Switch 結構
5.5 Do/While 結構
5.6 For 結構
5.7 Break
總結

6 撰寫命令稿的多種形式(以及該用哪一種)
6.1 工具與控制器的對比
6.2 工具的思維
6.3 控制器的思維
6.4 工具與控制器的比較
6.5 一些實際的例子
6.6 更進一步的控制
6.7 實驗
總結

7 命令稿與安全性
7.1 安全至上
7.2 執行策略
7.3 PowerShell 並非預設執行的應用程式
7.4 執行命令稿
7.5 建議
總結 

【Part 2】
8 永遠先從設計著手
8.1 只做一件事的工具
8.2 工具是可以測試的
8.3 工具是有彈性的
8.4 工具看起來要像原生的
8.5 舉個例子
8.6 輪到你練習了
總結

9 避免臭蟲:先從指令著手
9.1 你需要執行什麼
9.2 分解它、正確地執行
9.3 執行指令並深入鑽研
9.4 過程很重要
9.5 知道自己需要的
9.6 輪到你練習了
總結

10 建構基本函式與命令稿模組
10.1 從基本函式開始
10.3 先決條件檢查
10.4 執行指令
10.5 輪到你練習了
總結

11 進階函式入門
11.1 關於 CmdletBinding 和常用參數
11.2 輪到你練習了
總結

12 物件:最佳的輸出類型
12.1 組合資訊
12.2 建構並發表輸出
12.3 快速測試
12.4 物件替代品
12.5 補充物件
12.6 輪到你練習了
總結

13 運用所有的串流
13.1 瞭解七種輸出串流
13.2 添加詳盡及警示輸出
13.3 用 -Verbose 增加作為
13.4 資訊輸出
13.5 輪到你練習了
總結

14 簡易說明:製作註解
14.1 說明要放在哪裡
14.2 起手式
14.3 更進一步的註解式說明
14.4 說明內容損毀
14.5 不只是註解
14.6 輪到你練習了
總結

15 錯誤及其處理方法
15.1 了解錯誤與異常例外
15.2 處理不當
15.3 異常例外處理的兩大原因
15.4 在你的工具內處理異常例外
15.5 捕捉異常例外 194
15.6 處理非指令的異常例外
15.7 進一步的異常例外處理
15.8 輪到你練習了
總結

16 填寫清單
16.1 模組執行順序
16.2 建立新的清單
16.3 檢查清單
16.4 輪到你練習了
總結

【Part 3】
17 在開始撰寫命令稿時改變你腦中的想法 
17.1 範例 1  
17.2 範例 2  
17.3 輪到你練習了
總結

18 專業級的命令稿寫作
18.1 使用原始碼控管
18.2 程式碼的清晰度
18.3 有效的註解
18.4 程式碼的格式
18.5 有意義的變數名稱
18.6 避免別名
18.7 邏輯優先於複雜性
18.8 提供說明
18.9 避免使用 Write-Host 和 Read-Host
18.10 只用單引號
18.11 不要汙染全域空間
18.12 保持彈性
18.13 安全性優先
18.14 保持優雅
總結

19 Git 原始碼控管簡介
19.1 為何需要原始碼控管?
19.2 何為 Git?
19.3 儲存庫基礎知識
19.4 以 VS Code 搭配 Git 使用
19.5 整合 GitHub
總結

20 命令稿消毒
20.1 願景
20.2 手動測試的諸多問題
20.3 自動化測試的好處
20.4 Pester 簡介
20.5 要測試的程式碼
20.6 你要測試些什麼?
20.7 寫一段基本的 Pester 測試
總結

21 簽署你的命令稿
21.1 簽署命令稿的意義
21.2 關於憑證
21.3 設定你的命令稿簽署策略
21.4 程式碼簽署的基礎
總結

22 發行你的命令稿
22.1 發行的重要性
22.2 探索 PowerShell Gallery
22.3 其他的發行選項
22.4 在發行之前
22.5 準備、就位、發行
22.6 發行命令稿
總結

【Part 4】
23 除蟲
23.1 三大類臭蟲
23.2 處理語法型臭蟲
23.3 處理執行結果型臭蟲
23.4 處理邏輯型臭蟲
23.5 輪到你練習了
總結

24 強化命令稿輸出的呈現
24.1 我們的起點
24.2 建立預設的檢視
24.3 輪到你練習了
總結

25 把 .NET Framework 包裝起來
25.1 為何 PowerShell 會存在
25.2 探索某個類別
25.3 製作一個包裝工具
25.4 一個更實用的例子
25.5 輪到你練習了
總結

26 儲存資料—可不是用 Excel!
26.1 SQL Server 簡介!
26.2 設置一切
26.3 使用資料庫:建立一個資料庫
26.4 將資料存入 SQL Server
26.5 對SQL Server 查詢資料
總結

27 學無止境
27.1 歡迎來到工具製作的領域
27.2 進行你的下一步
27.3 未來的路上會怎樣呢?
總結