2024香港最具教育競爭力中學/小學/幼稚園50強龍虎榜
2024香港最具教育競爭力中學/小學/幼稚園排名指南
最近十一年香港最具教育競爭力中學/小學/幼稚園50強完整版榜單:
2024202320222021/202019201820172016201520142013
教育競爭力評比體系說明
校風評比體系說明
服务全球华人的中英文書籍網上書店
您的購物車是空的

Windows PowerShell高級編程

  • 作者:(美) (庫馬拉爾Kumaravel) (A) (美) (懷特White) (J) 等 著 馮權友 譯
  • 出版社: 清華大學出版社
  • 出版時間:2009-01-01
  • 版次:1
  • 商品編號: 10156524

    頁數:333

    印次:1

    印刷時間:2009-01-01


HK$76.50 (速遞費用須知)
購買額滿HK$158免運費
免郵費優惠僅限香港、澳门、
台灣及中國大陸

購買數量:

內容簡介

 

PowerShell是一種新的命令行外殼和腳本語言,用於進行系統管理和自動化。本書的作者由微軟專家團隊組成,從程序員的角度對Windows PowerShell編程技術進行介紹,不儀講解了PowerShell的核心模塊和基本概念,還提供了大量利用PowerShell強大功能構建軟件包的實用開發技巧,是學習PowerShell編程的最佳參考。
  在學習過程中,您不僅會發現PowerShell的SDK為應用程序提供了完整的技術支持,還將體驗PowerShell的傘新技術,它使所有.NET Framework對象都可以通過腳本訪問,這也使得PowerShell有望成為最受歡迎的工具和對Windows管理員來說最重要的語言。一旦升始編寫命令行類的上具程序,您就會驚奇地發現PowerShell可以使您將注意力集中在核心業務邏輯上。相信這款由微軟精心打造的軟件會為您的編程生活帶來額外的驚喜和收穫。
  本書主要內容
  ?創建PowerShell的Snap—in
  ?開發自定義的Cmdlet
  ?創建自定義的提供者
  ?調用PowerShell執行引擎
  ?實現宿主用戶接口
  ?類型擴展及格式化
  本書讀者對象
  本書面向希望拓展Windows PowerShell功能,或者使用PowerShell技術來擴展自己的應用程序的開發人員和程序員。

作者簡介

  Arul Kumaravel,是目前Windows:PowerShell開發小組的負責人。從早期開始,他就參與了這個項目並領導該小組發佈了第一版的Windows PowerShell產品。現在,他正領導著下一個版本的PowerShell產品的開發。Arul從他年輕時學習BASIC編程開始,就著迷於計算機技術。他在Iowa大學和印度Madras工程學院都獲得了計算機科學方面的碩士學位。在微軟實習期間,他為IE3瀏覽器編寫了第一個JavaScfipt/VBScfipt調試器,同時微軟公司的氛圍也留給了他很好的印象,他決定為微軟效力而改變數以萬計人的生活。在微軟任職的11年裡,他在各種各樣的小組工作過,發佈了很多個版本的產品,包括IE瀏覽器、Windows操作系統、目錄管理服務器。最近,由於對科學技術的商業運作感興趣,Arul開始在Wharton商學院刻苦攻讀M.B.A。
  JonWhite,是位軟件工程師,生活工作在美麗的西雅圖東郊,他也是微軟PowerShell小組的創始成員。他的職業生涯開始於微軟操作系統服務器版的管理工具組。10多歲時,父親在二手店給他買了一個8088型PC,此後作為業餘愛好者的他開始學習程序設計。那個二手PC內置MS-DOS2.0,它的debug.exe只含有16位反彙編器而沒有彙編器。因此,Jon在程序設計方面的第一次嘗試就是把長長的字節表反彙編成一個反向查找的字典,以此將彙編程序手動地變成可執行二進制代碼。更妙的是,他後來查出了64位Windows操作系統中debug.exe的漏洞。作為PowerShell小組的一員,在2004年,當他負責將小組的測試工作從Pefl轉移到PowerShell腳本上來時,他編寫了該語言的第一個工作腳本。業餘時間,他喜歡航海或者在自家後院裡玩焰火。

目錄

第1章 PowerShell簡介
1.1 Windows PowerShell設計原則
1.1.1 保留用戶已有的投資
1.1.2 提供一個功能強大、面向對象的外殼程序
1.1.3 擴展性是第一位的
1.1.4 剔除開發過程中的障礙
1.2 Windows PowerShell快速入門
1.3 Windows PowerShell的高層體系結構
1.3.1 宿主程序
1.3.2 Windows PowerShell引擎
1.3.3 Windows PowerShell snap-in
1.4 小結
第2章 擴展Windows PowerShell
2.1 PowerShell snap-in分類
2.2 編寫標準的PowerShellsnap-in
2.2.1 編寫PowerShell snap-in
2.2.2 註冊PowerShell snap-in
2.2.3 查看可用的PowerShellsnap-in列表
2.2.4 將PowerShell snap.in動態裝載到外殼程序中
2.2.5 從外殼程序中動態刪除snap-in
2.2.6 取消註冊snap-in
2.2.7 註冊沒有實現類的PSSnapin snap-in
2.2.8 保存snap-in配置文件
2.2.9 用保存的snap-in配置文件啟動PowerShell
2.2.10 使用配置文件(profile)保存snap-in配置
2.3 創建自定義的PowerShell snap-in
2.3.1 編寫自定義的snap-in
2.3.2 使用自定義的snap-in
2.4 小結
第3章 理解PowerShell擴展類型系統
3.1 PSObject
3.2 構造PSObject對象
3.2.1 PSObject(object)
3.2.2 PSObjecto
3.2.3 PSObject.AsPSObject(someobject)
3.3 ImmediateBaseObject屬性和BaseObject屬性
3.4 成員
3.4.1 PSMemberlnfoCollection
3.4.2 ReadOnlyPSMemberInfoCollection
3.4.3 基類成員、適配器成員和擴展型成員
3.5 成員分類
3.5.1 屬性
3.5.2 方法
3.5.3 集合
3.6 聊eNames
3.7 查找算法
3.8 距離算法
3.9 PSObiect的固有成員和MemberSets
3.10 錯誤和異常
3.10.1 運行時錯誤
3.10.2 初始化錯誤
3.11 類型轉換
3.11.1 PowerShell語言中的標準類型轉換
3.11.2 自定義型轉換
3.12 TOString方法
3.13 類型配置(聊eData)
3.13.1 常用成員
3.13.2 腳本訪問
3.14 小結
第4章 開發cmdlet
4.1 基本概念
4.1.1 命令行解析
4.1.2 命令發現
4.1.3 參數綁定
4.1.4 命令調用
4.2 使用參數
4.2.1 強制參數
4.2.2 位置參數
4.2.3 參數集合
4.2.4 參數值驗證
4.2.5 參數轉換
4.3 處理管道輸入
4.4 生成管道輸出
4.5 錯誤報告
4.5.1 ErrorRecord類
4.5.2 ErrorDetails類
4.5.3 非終結型錯誤和致命錯誤
4.6 支持ShouldProcess
4.6.1 影響確認等級
4.6.2 ShouldContinue()
4.7 使用PowerSheU系統路徑
4.8 編寫cmdlet幫助文檔
4.9 cmdlet開發最佳實踐
4.9.1 命名約定
4.9.2 與宿主交互
4.10 小結
第5章 提供程序
5.1 實現提供程序類的原因
5.2 基本概念
5.2.1 路徑
5.2.2 驅動器
5.2.3 錯誤處理
5.2.4 功能
5.3 Hello World提供程序
5.4 內置提供程序
5.4.1 別名提供程序
5.4.2 環境提供程序
5.4.3 文件系統提供程序
5.4.4 函數提供程序
5.4.5 註冊表提供程序
5.4.6 變量提供程序
5.4.7 證書提供程序
5.5 提供程序基類
5.5.1 CmdletProvier類
5.5.2 DriveCmdletProvider類
5.5.3 ItemCmdletProvider類
5.5.4 ContainerCmdletPmvider類
5.5.5 NavigationCmdletProvider類
5.6 可選的提供程序接口
5.6.1 IContentCmdletProvider接口
5.6.2 IPropertyCmdletProvider接口
5.6.3 lDynamicPropertyCmdletPmvic接口
5.6.4 ISecurityDescriptorCmdletProvi接口
5.7 CmdletProvider基類
5.7.1 CmdletProvider的方法和屬性
5.7.2 DriveCmdletProvider
5.7.3 ItemCmdletProvider
5.7.4 ContainerE:mdletProvider
5.7.5 NavigationCmdletProvider
5.8 設計準則與提示
5.9 小結
第6章 在應用程序中集成PowerShe引擎
6.1 運行空間和管道
6.2 入門
6.3 執行命令行
6.3.1 使用Runspaceinvoke
6.3.2 使用Runspace和Pipeline
6.4 使用管道的輸出
6.4.1 Invoke()返回值
6.4.2 使用管道返回的PSObject對象
6.4.3 處理終結型錯誤
6.5 同步管道中的輸入、輸出和錯誤
6.5.1 將輸入對象傳遞給管道
6.5.2 同步執行時的輸出管道
6.5.3 從錯誤管道獲取非終結型錯誤
6.5.4 ErrorRecord類型
6.6 操作管道的其他技巧
6.6.1 嵌套式管道
6.6.2 管道重用
6.6.3 在運行空間之間複製管道
6.7 配置運行空間
6.7.1 創建自定義配置的運行空間
6.7.2 添加和刪除snap.in
6.7.3 通過控制台文件創建RunspaceConfiguration
6.7.4 通過程序集創建RunspaceConfiguration對象
6.7.5 使用SessionStateProxy設置和獲取變量
6.8 異步執行管道
6.8.1 調用InvokeAsyc0
6.8.2 關閉輸入管道
6.8.3 從異步管道讀取輸出和錯誤
6.8.4 監視管道的StateChanged事件
6.8.5 由PipelineStatelnfo.Reason讀取終結型錯誤
6.8.6 停止正在執行的管道
6.9 異步運行空間操作
6.9.1 OpenAsync0方法
6.9.2 處理運行空間的StateChanged事件
6.10 編程創建管道對象
6.10.1 創建空管道對象
6.10.2 創建命令對象
6.10.3 合併命令結果
6.10.4 添加命令參數
6.10.5 向管道添加命令
6.11 使用cmdlet作為GUI程序的API層
6.11.1 高層架構
6.11.2 cmdlet與GUI成功集成的關鍵技術
6.11.3 提供自定義的宿主
6.12 小結
第7章 宿主
7.1 宿主與Windows PowerShell引擎之間的交互
7.2 cmdlet和宿主的交互
7.3 PSHost類
7.3.1 Instanceld
7.3.2 Name
7.3.3 Version
7.3.4 CurrentCulture
7.3.5 CurrentⅥCulture
7.3.6 PrivateData
7.3.7 EnterNestedPrompt
7.3.8 ExitNestedPrompt
7.3.9 應用程序通知方法
7.3.10 SetShouldExit
7.4 PSHostUserInterface類
7.4.1 WriteDebugLine
7.4.2 WriteVerboseLine
7.4.3 WriteWamingLine
7.4.4 WriteProgress
7.4.5 WriteErrorLine
7.4.6 Write方法
7.4.7 Prompt方法
7.4.8 PromptForCredential
7.4.9 Read方法
7.5 PSHostRawUserInterface類
7.6 小結
第8章 格式與輸出
8.1 四種視圖類型
8.1.1 Table視圖:format-table
8.1.2 List視圖:format-1ist
8.1.3 custom視圖:format-custom
8.1.4 Wide視圖:format-wide」
8.2 不使用*format-pslxml配置文件進行格式化
8.3 格式配置文件示例
8.4 加載格式文件
8.4.1 update.formatdata
8.4.2 snap—in
8.4.3 RunspaceConfigttration類的API接口
8.5 格式配置文件詳解
8.5.1 VieW
8.5.2 Name
8.5.3 ViewSelectedBy
8.5.4 GroupBy
8.6 TableControl
8.6.1 TableHeader
8.6.2 TableRowEntries
8.7 ListContr01
8.8 WideControl
8.9 CustomControl
8.10 其他配置條目
8.10.1 Wrap
8.10.2 AutoSize
8.11 使用場合
8.11.1 格式化字符串
8.11.2 反序列化對象的格式問題
8.11.3 類繼承問題
8.11.4 選擇集
8.11.5 顏色
8.12 小結
附錄A cmdIet動詞命名準則
附錄B CITIdIet參數命名準則
附錄C 元數據
附錄D 提供程序基類與重載/接口
附錄E 用於提供程序交互的核心cmdIet


我們接受以下的付款方式︰VISA、Mastercard、JCB 信用卡、PayPal、銀行轉帳。