視頻地址:【黑客基礎】Windows PowerShell 腳本學習
2019.12.05 學習筆記
1、$PSVersionTable :查看PowerShell的版本資訊,
2、PowerShell 界面:
- 開始界面搜索 “PowerShell” ,點擊 “PowerShell.exe” 或者 “PowerShell ISE”,
- cmd 命令界面輸入 “PowerShell”,
3、PowerShell 快捷鍵
- Alt + F7 :清除命令等歷史記錄,相當于 cls 命令,
- Ctrl + PgUp :上翻頁,
- Ctrl + PgDn :下翻頁,
- 上下箭頭鍵 :切換命令列等歷史記錄,
- 左/右箭頭鍵 :左右移動游標,
- Ctrl + Home :
- Ctrl + End :
- ESC:清空當前命令列,
- Tab :自動補齊并選擇補齊命令或檔案名,
- Enter :執行當前的命令,
- Ctrl + C :取消正在執行等命令,
- Backspace :從右洗掉命令列字符,
- F2 :自動補充歷史命令到指定字符,
- F4 :洗掉命令列至游標右邊指定等字符處,
- F7 :對話框顯示命令列歷史記錄,
- F8 :檢索包含指定字符的命令列歷史記錄,
- F9 :根據命令列等歷史記錄編號選擇命令,歷史記錄編號可以通過 F7 查看,
4、PowerShell 的管道
- PowerShell 的管道是基于物件的,和Linux Shell 基于文本不同,
- 管道:前一個命令的輸出作為下一個命令的輸入,
- 重定向:
- “>” 表示輸出到某檔案,覆寫檔案原有的內容,如果檔案不存在則自動創建,
- “>>” 表示添加到某檔案內容的結尾,
5、PowerShell 的運算子
- 支持四則運算
- 支持數值的進制轉換
- 支持邏輯運算
6、PowerShell 使用外部命令
-
PowerShell 是 cmd 的擴展,cmd 的命令在 PowerShell 中基本都可以使用執行,
-
netstat -ano :查看埠資訊,同 cmd 命令,
-
ipconfig :查看網路配置資訊,同 cmd 命令,
-
route print :列印路由資訊,同 cmd 命令,
-
start :打開應用程式,
-
notepad :打開文本編輯器,同 cmd 命令,
-
calc :打開計算器,同 cmd 命令,
-
&"command" :打開PowerShell 外部命令,PowerShell 專用,
-
$env:path :輸出 path 環境變數的內容,
-
$env:path = $env:path + "dir_path" :臨時添加 path 環境變數,
7、PowerShell 的命令集
- Get-Command :獲取 PowerShell 所有的命令,
- PowerShell 的命令型別有 Alias 、Function 、Cmdlet 三種,
- Alias :別名,
- Function :函式,
- Cmdlet :PowerShell 內部命令,以動-名詞的格式命名,
- Get-Help :獲取命令的幫助資訊,
- Get-process :獲取系統的行程資訊,
- Get-Alias :獲取別名對應的命令資訊,
- Get-History :獲取命令列使用命令的歷史資訊,
- Get-Date:獲取當前的日期時間資訊,
8、PowerShell 的別名
- Get-Help :獲取命令的幫助資訊,包含命令的別名資訊,
- Get-Alias :獲取別名對應的命令資訊,
- Get-Alias -name "ls" :獲取別名是“ls”的PowerShell命令,
- Get-Alias | where {$_.definition.startswith("Remove")} :獲取以“Remove”開頭命令的別名資訊,
- Get-Alias | Group-Object definition | sort -descending Count :根據命令別名的個數倒序顯示命令及其別名,
9、自定義別名
- Set-Alias :定義命令的別名,
- Set-Alias -name txt -value notepad
- -name :指定命令的別名,
- -value :指定需要定義別名的命令,
- del alias:txt :洗掉別名“txt”,
- Export-Alias :匯出別名,
Export-Alias demo.ps1, - Import-Alias :匯入別名,
Import-Alias demo.ps1,不成功可以使用“-force”引數進行強制匯入,
10、PowerShell 變數
- PowerShell 使用 $ 符號來定義變數,不需要指定變數型別,
- $var_name
- $var_name = value
- PowerShell 對大小寫不敏感,
- 定義變數使用特別的變數名需要使用花括號將變數名括起來,
- 變數的賦值可以是別名、命令、運算式等,
- 多個變數可以同時賦值,
11、變數操作
-
兩個變數的值互換:
-
$tempt = $var1 $var_1 = $var_2 $var_2 = $tempt -
$var_1,$var_2 = $var_2,$var_1
-
-
ls variable:: 查看當前使用的變數, -
ls variable:var_name: 查看變數 $var_name 的資訊,支持正則運算式, -
Test-Path variable:var_name:查看變數 $var_name 是否存在,回傳布林值, -
del variable:var_name:洗掉指定的變數, -
Clear-Variable :清除指定的變數,
-
Remove-Variable:洗掉指定的變數,
12、PowerShell 自動化變數
- 自動化變數是由 PowerShell 自己創建和維護的,一些變數是只讀而不能寫入的,
- $home :用戶根目錄路徑,
- $pid :當前界面行程的ID,
- $$ :上一個運行的命令,
- $? :上一個命令運行的狀態,回傳布林值,
- $_ :當前變數,
- $null :空值,空變數,
13、PowerShell 環境變數
ls env::查看環境變數資訊,env:var_name:顯示指定的環境變數資訊,支持正則運算式,env:varname=value:創建添加一個環境變數,del env:var_name:洗掉指定的環境變數,支持正則運算式,[environment]::setenvironmentvariable("PATH","D:\","User"):設定用戶的 $PATH 變數,永久生效,[environment]::getenvironmentvariable("PATH","User"):獲取環境變數 $PATH ,
14、PowerShell 腳本執行策略
- PowerShell 腳本以
.ps1后綴, - Get-Executionpolicy :查看命令列的腳本執行權限,回傳 Restricted 表示禁止,
Set-Executionpolicy RemoteSigned:允許命令列運行 PowerShell 腳本,
15、PowerShell 腳本呼叫
- 切換到桌面:cd desktop
- & “PowerShell_script_path” :執行腳本,
- .bat 腳本檔案呼叫PowerShell 腳本:
powershell "& 'PowerShell_script_path'"
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/17271.html
標籤:Windows
