Please enable JavaScript.
Coggle requires JavaScript to display documents.
powershell (Cmdlet (檔案系統 (Get-ChildItem -Path c:\windows (dir c:\windows),…
powershell
Cmdlet
幫助
Help
Update-Help
建議每個月執行一次
需要管理權限
Get-Help 關鍵字
函數: help
別名: man
-example: 顯示範例
-full:完整說明
技巧
about_開頭是關於特定主題
為萬用字元
-online:線上幫助
Save-Help
可下載給無法聯網主機用
Update-Help -SourcePath 離線下載目錄
Command
Get-Command 關鍵字
Show-Command
GUI查看參數資訊
每次一個指令
資料型別
String
包含空格需要使用引號
Int,Int32,Int64
DateTime
列表
使用逗號分隔多個字串
Get-Content 搭配多行文字
Get-EventLog Application -computer (Get-Content a.txt)
別名
不建議使用
別名可能只有自己懂
生命週期只到 shall結束為止
New-Alias
Export-Alias
Get-Alias
檔案系統
Get-ChildItem -Path c:\windows
dir c:\windows
Set-Location -Path c:\
cd c:\
New-Item file1 -Type file
New-Item folder1 -Type directory
mkdir folder1
Set-Content -Path .\Test*.txt -Value 'Hello, World'
Get-Content -Path .\DateTime.txt
diff: 比對內容
EventLog
Get-EventLog Security-newest 100
Service
Get-Service
Process
Get-Process
Stop-Process
Active Directory
ADUser
Set-ADUser
慣例: 動詞-名詞
PSProvider
Drive
功能:建立驅動器映射
登錄檔
Set-Location -Path HKCU:
Set-Location -Path Software
Get-ChildItem
Set-ItemProperty -Path DWN -PSProperty xxx -Value 0
環境變數
Set-Item -Path env:UserRole -Value "Administrator"
CSV
Get-Process | Export-CSV a.csv
Import-CSV a.csv
ConvertTo-CSV
XML
Export-CliXML a.xml
Import-CliXML a.xml
ConvertTo-XML
Out
Out-Default
Out-Host
Out-File a.txt
Out-Printer
Out-String
Out-Null
HTML
Get-Process | ConvertTo-HTML
why
可以完全控制windows管理
微軟許多產品支援powershell
自動化GUI操作
可以執行外部指令,相容cmd.exe
整串指令加上破折號可避免解析錯誤
命令轉丟cmd.ex並取得執行結果
可以訪問整個.NET Framework
支援.Net Core
擴展
類型
模塊
不需註冊
特定目錄查找
環境變數PSMoudlePath
Get-Module
Remove-Moduke
Import-Module
Import-Module -Name DnsClient
支援PSDrive
Get-Command -Module DnsClient
管理單元
PSSnapin
過時
Get-PSProvider查看PSDrive
Get-Command查看支援Cmdlet
包含dll,xml和文檔
cmdlet名稱衝突
只會執行最後載入的模組
使用完整名稱
模組\Cmdlet
Export-Console shell.psc
powershell -psconsolefile shell.psc
profile.ps1
使用Object表示資料
Get-Member 取成員列表
縮寫Gm
Select-Member取需要的Member
縮寫Select
-First 5, 取前5筆
-Last 5, 取後5筆
Where-Object 過濾數據
Sort-Object排序數據
縮寫寫Sort
-Desc,反向排序
使用族群
使用命令列和第三方工具的管理員
集成建立更複雜的工具符合業務需求
開發可重覆使用的工具或腳本
補全快速鍵
Tab
Shift+Tab
是什麼?
不要當作是 cmd.exe
不區分大小寫
檢測版本
$PSVersionTable
功能擴展
PSProvider
pipeline
參數綁定
ByValue
只接受一個參數
比對型別
預設優先嘗試方案
ByPropertyName
PSProvider