「PowerShell」修訂間的差異
跳至導覽
跳至搜尋
小 (added Category:跨平台 using HotCat) |
|||
行 1: | 行 1: | ||
− | '''PowerShell''' | + | '''PowerShell''',{{wikipedia|PowerShell|lang=en}} |
− | |||
*{{wikiversity|PowerShell|lang=en}} | *{{wikiversity|PowerShell|lang=en}} | ||
*[https://github.com/PowerShell/PowerShell/releases Releases · PowerShell/PowerShell · GitHub] | *[https://github.com/PowerShell/PowerShell/releases Releases · PowerShell/PowerShell · GitHub] | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
==技術文件== | ==技術文件== | ||
*[https://docs.microsoft.com/zh-tw/powershell/ PowerShell 文件 - PowerShell | Microsoft Docs] | *[https://docs.microsoft.com/zh-tw/powershell/ PowerShell 文件 - PowerShell | Microsoft Docs] | ||
− | + | ||
+ | ;其他 | ||
*[https://ithelp.ithome.com.tw/users/20005121/ironman/54 強而有力的 Windows PowerShell :: 2009 iT 邦幫忙鐵人賽] | *[https://ithelp.ithome.com.tw/users/20005121/ironman/54 強而有力的 Windows PowerShell :: 2009 iT 邦幫忙鐵人賽] | ||
+ | *[https://blog.darkthread.net/blog/ps-func-param-syntax/ PowerShell FAQ - 函式多參數寫法陷阱-黑暗執行緒] | ||
+ | *[https://blog.darkthread.net/blog/ps-func-callback-param/ PowerShell FAQ - 傳入 Callback 函式參數-黑暗執行緒] | ||
+ | *[https://blog.darkthread.net/blog/ps-dump-and-compare-dll-ver PowerShell 小工具 - 盤點及比較 DLL 版本差異-黑暗執行緒] | ||
+ | *[https://blog.darkthread.net/blog/exe-output-stream-to-ps-pipeline/ 使用 PowerShell 串接 EXE 輸出串流結果-黑暗執行緒] | ||
+ | *[http://www.pstips.net/ PowerShell 中文博客] - ''收集和分享PowerShell相关教程,技术和最新动态'' | ||
<!-- | <!-- | ||
*[http://www.microsoft.com/downloads/details.aspx?FamilyId=DF8ED469-9007-401C-85E7-46649A32D0E0&displaylang=en Windows PowerShell Quick Reference] | *[http://www.microsoft.com/downloads/details.aspx?FamilyId=DF8ED469-9007-401C-85E7-46649A32D0E0&displaylang=en Windows PowerShell Quick Reference] | ||
行 32: | 行 24: | ||
//--> | //--> | ||
− | ==常用指令== | + | ==應用== |
+ | *[http://www.microsoft.com/downloads/details.aspx?FamilyID=50633A1F-A665-425D-923C-1A269F8AC084&displayLang=en Windows PowerShell 2.0 Software Development Kit (SDK)] | ||
+ | *[http://www.codeplex.com/powershellremoting/ PowerShell Remoting](遠端操作相關) | ||
+ | :*[http://forums.microsoft.com/Technet-CHT/ShowPost.aspx?PostID=3272993&SiteID=23 Technet討論區 - 請問 PowerShell 可否遠端登入] | ||
+ | |||
+ | *[http://www.microsoft.com/taiwan/technet/scriptcenter/resources/qanda/mar07/hey0326.mspx 如何使用 Windows PowerShell 以便在應用程式終止時收到通知?] | ||
+ | *[http://www.microsoft.com/technet/scriptcenter/resources/qanda/oct07/hey1031.mspx How Can I Use Windows PowerShell to Delete All the Files in a Folder Older Than 90 Days?] | ||
+ | *[http://blog.darkthread.net/blogs/darkthreadtw/archive/2007/11/23/my-first-powershell-script.aspx#3432 檢查檔案是否存在?如不存在則發email通知] | ||
+ | *[http://gallery.technet.microsoft.com/scriptcenter/files-from-websites-4a181ff3 Download files from websites programatically via powershell] | ||
+ | |||
+ | *[http://www.codeproject.com/Articles/18229/How-to-run-PowerShell-scripts-from-C How to run PowerShell scripts from C#] | ||
+ | |||
+ | ==FAQ== | ||
+ | ===安裝PowerShell=== | ||
+ | *[https://docs.microsoft.com/zh-tw/powershell/scripting/install/installing-powershell 在 Windows、Linux 和 macOS 上安裝 PowerShell - PowerShell | Microsoft Docs] | ||
+ | ===常用指令=== | ||
*Get-Help | *Get-Help | ||
:取得指令的使用說明 | :取得指令的使用說明 | ||
行 52: | 行 59: | ||
:顯示能安裝的軟體套件的來源 | :顯示能安裝的軟體套件的來源 | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
===軟體套件安裝=== | ===軟體套件安裝=== | ||
*[https://chocolatey.org/install Chocolatey Software | Installing Chocolatey] | *[https://chocolatey.org/install Chocolatey Software | Installing Chocolatey] | ||
行 168: | 行 161: | ||
*[https://blog.darkthread.net/blog/compute-file-hash-in-win/ 計算檔案雜湊碼 - 使用 PowerShell 及 Windows 內建工具-黑暗執行緒] | *[https://blog.darkthread.net/blog/compute-file-hash-in-win/ 計算檔案雜湊碼 - 使用 PowerShell 及 Windows 內建工具-黑暗執行緒] | ||
===其他=== | ===其他=== | ||
− | *[https:// | + | *[https://docs.microsoft.com/zh-tw/powershell/scripting/install/windows-powershell-system-requirements Windows PowerShell 系統需求] |
− | *[ | + | *參照: |
− | *[ | + | **[http://social.technet.microsoft.com/Forums/zh-TW/powershellzhcht/threads Windows PowerShell 論壇] |
− | *[https:// | + | **[http://technet.microsoft.com/zh-tw/scriptcenter/default.aspx 指令碼中心] |
+ | |||
+ | ;安裝 | ||
+ | *[http://support.microsoft.com/kb/968930/zh-tw KB968930 - Windows Management Framework Core package (Windows PowerShell 2.0 and WinRM 2.0)] | ||
+ | *[http://support.microsoft.com/kb/968929/zh-tw KB968929 - Windows Management Framework (Windows PowerShell 2.0, WinRM 2.0, and BITS 4.0)] | ||
+ | *[https://github.com/PowerShell/PowerShell/releases Releases · PowerShell/PowerShell] | ||
+ | **[https://docs.microsoft.com/zh-tw/powershell/scripting/install/installing-powershell-core-on-windows 在 Windows 上安裝 PowerShell - PowerShell | Microsoft Docs] | ||
+ | |||
+ | ;啟動方法 | ||
+ | *【開始】→【執行】→【powershell】 | ||
− | |||
− | |||
[[Category:軟體]] | [[Category:軟體]] |
於 2022年1月8日 (六) 18:55 的修訂
PowerShell,參照:『維基百科~PowerShell』
技術文件
- 其他
- 強而有力的 Windows PowerShell :: 2009 iT 邦幫忙鐵人賽
- PowerShell FAQ - 函式多參數寫法陷阱-黑暗執行緒
- PowerShell FAQ - 傳入 Callback 函式參數-黑暗執行緒
- PowerShell 小工具 - 盤點及比較 DLL 版本差異-黑暗執行緒
- 使用 PowerShell 串接 EXE 輸出串流結果-黑暗執行緒
- PowerShell 中文博客 - 收集和分享PowerShell相关教程,技术和最新动态
應用
- 如何使用 Windows PowerShell 以便在應用程式終止時收到通知?
- How Can I Use Windows PowerShell to Delete All the Files in a Folder Older Than 90 Days?
- 檢查檔案是否存在?如不存在則發email通知
- Download files from websites programatically via powershell
FAQ
安裝PowerShell
常用指令
- Get-Help
- 取得指令的使用說明
- exit
- 離開PowerShell
- HELP
- 線上說明
- kill
- 停止執行中的程序
- ps
- 顯示執行中的程序狀態
- Get-Module
- 顯示已安裝的模組
- Get-Package
- 顯示已安裝的軟體套件
- Find-Package -Name 套件名
- 尋找套件(需安裝Nuget)
- Get-PackageSource
- 顯示能安裝的軟體套件的來源
軟體套件安裝
$ Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
- 安裝軟體 (以notepadplusplus為例)
$ choco install notepadplusplus
改善PowerShell的效能
取得網路卡資訊
Get-WmiObject win32_NetworkAdapter | %{ if ($_.PhysicalAdapter -and $_.Name -notmatch "Virtual") {$_ } }
使用7z
- Windows 腳本語言選擇
- Windows powershell還是可以使用7Z
- 重新命名資料夾名稱
- 使用xml檔
使用git
使用xml
取得資料夾內附檔名為zip的檔名
$Dir="D:/Folder" foreach($item in (dir $Dir "*.zip")){ Echo $item.Name }
關閉程式與執行程式
- 關閉程式
#取得授權 Set-ExecutionPolicy RemoteSigned #判斷與停止Client if(Get-Process client -ErrorAction SilentlyContinue) { Stop-Process -Name client } #等待1s Start-Sleep -s 1
- 執行程式
#取得授權 Set-ExecutionPolicy RemoteSigned #執行項目 [System.Diagnostics.Process]::Start("C:\Client\client.exe", "")
刪除超過30天的資料庫備份檔
- 參考: 用PowerShell刪除N天前或指定日期(前後)建立(或修改)的檔案 | 程式前沿
- 檔案:ClearDbBackup.ps1
# 清除超過30天的資料庫備份檔 # # 用法: # 用管理員身分執行 PowerShell (怕資料夾或檔案鎖在管理員權限而無法刪除) # >D: # >CD D:\Buckup # >./ClearDbBackup.ps1 #定義主目錄 #透過Get-ChildItem抓該資料夾內的檔案列表 $TargetFolder = "D:\Backup\DB" #定義天數,要刪除多久以前的檔案 #若是要刪除30天前的檔案,$Days就設定30 $Days = 30 #取今日時間 $Currentlytime = (Get-Date).AddDays(-$Days) $Dirs = Get-Childitem -Path $TargetFolder -Recurse -Include *.bak foreach ($item in $Dirs) { #判斷檔案最後修改時間 #由LastWriteTime抓取檔案最後修改時間 #利用AddDays對$Currentlytime做時間的運算 if($item.LastWriteTime -le $Currentlytime) #-le 小於或等於 { Remove-Item $item.FullName | out-null write-host "Finish Deleting Dir $item" -ForegroundColor "DarkRed" } }
ASP.NET WebForm PostBack
JSON
Excel批次轉檔
文字亂碼
計算檔案的雜湊值
其他
- 安裝
- KB968930 - Windows Management Framework Core package (Windows PowerShell 2.0 and WinRM 2.0)
- KB968929 - Windows Management Framework (Windows PowerShell 2.0, WinRM 2.0, and BITS 4.0)
- Releases · PowerShell/PowerShell
- 啟動方法
- 【開始】→【執行】→【powershell】