「維運改善」標籤的文章
帶有「維運改善」標籤的文章共 20 篇,依發布日期由新到舊排列。
-
用 winget + PowerShell 自動化 PC 配置 ── 讓操作手冊變得可執行
本文整理讓新進員工 PC 的環境建置可重現的方法,涵蓋以 winget 進行應用程式導入與 export/import、WinGet Configuration 的宣告式組態、以 PowerShell 補充的設定,以及無人執行時的注意事項。
-
PowerShell 的安全性強化 ── 日誌・AMSI・語言模式・JEA
本文整理在不禁止 PowerShell 的前提下安全使用它的實務做法。內容涵蓋啟用指令碼區塊記錄與逐字稿記錄、停用 AMSI 與舊版本、以語言模式進行限制,以及透過 JEA 委派權限。
-
使用 Get-WinEvent 有效率地調查事件記錄 ── 篩選的速度決定調查所需的時間
本文整理如何用 PowerShell 有效率地進行 Windows 事件記錄的調查。說明以 Where-Object 篩選為什麼慢、FilterHashtable 與 XPath 的使用區分、重新開機、登入、應用程式異常結束等調查手法,以及跨多台伺服器收集記錄的方法。
-
PowerShell 模組的公司內部分發與更新 ── PSResourceGet 與內部儲存庫
整理如何告別複製共用資料夾中的 ps1 檔案並重複使用的運作方式。內容涵蓋模組資訊清單(manifest)的撰寫方式、版本管理、用 PSResourceGet 建立內部儲存庫並進行分發與更新,以及與簽章搭配運用的做法。
-
用 PSScriptAnalyzer 守護 PowerShell 腳本的品質 ── 規則挑選與 CI 導入
本文是將 PowerShell 靜態分析工具 PSScriptAnalyzer 導入公司內部腳本的實務指南。內容涵蓋應優先啟用的規則、設定檔的寫法、對既有資產的階段性導入,以及在 GitHub Actions 中建置 CI 的方法。
-
PowerShell與REST API串接 ── Invoke-RestMethod的實務
本文整理從PowerShell呼叫公司內部API或SaaS REST API的實務作法。內容涵蓋認證標頭的傳遞方式、日文JSON亂碼的因應對策、4xx/5xx的錯誤處理、429的重試、分頁,以及Proxy與TLS的陷阱。
-
PowerShell 腳本太慢時該檢查的地方 ── 陣列・管線・比對的訣竅
整理 PowerShell 腳本變慢的常見原因。從實務角度解說陣列 += 造成 O(n^2) 的原因、管線與 foreach 的差異、比對的雜湊表化、檔案 I/O 的改善,以及正確的測量方式。
-
告別 Write-Host ── PowerShell 的輸出資料流與日誌設計
本文整理 PowerShell 六個輸出資料流的使用區分、Write-Host 所存在的問題與正確用途、函式傳回值被污染的原因、透過 -Verbose 與 -InformationVariable 由呼叫端進行控制的方法,以及結構化日誌的留存方式。
-
Microsoft Graph PowerShell 入門 ── AzureAD・MSOnline 廢止後的 Microsoft 365 維運
本文為 AzureAD・MSOnline 模組廢止後,將 Microsoft 365 維運遷移至 Microsoft Graph PowerShell 的實務指南。內容說明連線與範圍(Scope)設計、以憑證進行的無人執行,以及使用者盤點、授權彙總等經典腳本。
-
PowerShell 的並行處理 ── ForEach-Object -Parallel 與工作(Job)的選用之道
從實務角度整理 ForEach-Object -Parallel、Start-ThreadJob、Start-Job 的差異與選用方式,$using: 與執行緒安全性,ThrottleLimit 的決定方法,以及反而變慢的情況。
-
從 PowerShell 正確呼叫外部 exe ── 引數的引號、結束代碼、亂碼陷阱
從 PowerShell 呼叫 robocopy 或公司內部 EXE 時,引數會被破壞、拿不到結束代碼、輸出出現亂碼。本文從實務角度整理 PowerShell 7.3 的引數傳遞變更、停止剖析權杖 --%、以及 Start-Process 的使用時機。
-
那個批次檔,該遷移到 PowerShell 嗎? ── cmd/bat 資產盤點與遷移判斷
以判斷表整理企業內部殘留的批次檔(bat)是否該遷移到 PowerShell。對比 cmd 與 VBScript 的處境、bat 特有的弱點(例如錯誤不會中斷執行)、過渡期的寫法、指令改寫對照表與遷移步驟。
-
PowerShell 中安全處理認證資訊 ── 把明文密碼逐出腳本
本文整理將 PowerShell 腳本中的明文密碼遷移至安全保存方式的做法,說明 SecureString 的實際樣貌與限制、Export-Clixml 透過 DPAPI 保存的機制,以及 SecretManagement/SecretStore 的適用場合。
-
PowerShell 腳本的引數設計與模組化 ── 從「能動的腳本」到「能交給別人用的腳本」
本文整理將 PowerShell 腳本提升到可以交給別人使用之品質的步驟,說明 param 區塊與 [CmdletBinding()]、輸入驗證、管線輸入、-WhatIf 對應、.psm1 模組化,一直到公司內部共用與 Git 管理的要點。
-
用 PowerShell 為檔案伺服器盤點 ── 容量調查與存取權限(ACL)稽核
用 PowerShell 盤點檔案伺服器的實務步驟。整理容量調查與存取拒絕的記錄、舊檔案清單與重複候選的雜湊擷取、以 Get-Acl 進行權限稽核與偵測繼承中斷、CSV 報表化、與 icacls 的分工,直到 Set-Acl 的安全變更步驟。
-
PowerShell Remoting(WinRM)入門 ── 一次管理多台 Windows
PowerShell Remoting(WinRM)一次管理多台 Windows 的入門介紹。整理其運作機制與連接埠 5985/5986、執行 Enable-PSRemoting 會發生的事、工作群組的 TrustedHosts、Invoke-Command 與 PSSession、second hop 問題,直...
-
Windows PowerShell 5.1 與 PowerShell 7 的差異 ── 公司內部腳本遷移實務指南
本文整理 Windows PowerShell 5.1 與 PowerShell 7 的關係(共存與 pwsh.exe)、5.1 不再新增功能的官方方針、編碼差異造成的亂碼問題、以 #Requires 進行防禦,直到更新工作排程器為止的遷移步驟。
-
PowerShell 的錯誤處理與重新執行設計 ── 從 try/catch 失效的陷阱到 exit code、重試的實務定石
本文從實務角度整理 PowerShell 終止錯誤與非終止錯誤的差異、try/catch 失效的陷阱與 -ErrorAction Stop 的實務定石、以 $LASTEXITCODE 判定成敗、exit code 設計,直到指數退避的重試機制。
-
PowerShell 的執行原則與指令碼簽署 ── 從「用 Bypass 蓋住問題」的做法畢業的實務指南
PowerShell 的執行原則是「並非安全邊界,而是安全裝置」。本文整理 RemoteSigned 等原則的差異、範圍的優先順序、Mark of the Web 與 Unblock-File、指令碼簽署,以及公司內部發布的現實運用方式。
-
PowerShell 腳本應用 ── 安全地自動化日誌調查、封存與報表化
本文整理用 PowerShell 腳本安全地推進日誌調查、CSV 報表、舊日誌封存、留存紀錄,一直到工作排程器定期執行的實務步驟。