「PowerShell」修訂間的差異

出自ProgWiki
跳至導覽 跳至搜尋
(added Category:跨平台 using HotCat
行 1: 行 1:
'''PowerShell'''
+
'''PowerShell'''{{wikipedia|PowerShell|lang=en}}
*{{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/scripting/install/windows-powershell-system-requirements Windows PowerShell 系統需求]
 
*參照:
 
**[http://social.technet.microsoft.com/Forums/zh-TW/powershellzhcht/threads Windows PowerShell 論壇]
 
**[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】
 
  
 
==技術文件==
 
==技術文件==
 
*[https://docs.microsoft.com/zh-tw/powershell/ PowerShell 文件 - PowerShell | Microsoft Docs]
 
*[https://docs.microsoft.com/zh-tw/powershell/ PowerShell 文件 - PowerShell | Microsoft Docs]
*[http://search.microsoft.com/results.aspx?mkt=zh-TW&setlang=zh-TW&q=Windows+PowerShell 搜尋微軟網站上的『Windows PowerShell』]
+
 
 +
;其他
 
*[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:
 
:顯示能安裝的軟體套件的來源
 
:顯示能安裝的軟體套件的來源
  
==相關套件==
 
*[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]
 
===C#===
 
*[http://www.codeproject.com/Articles/18229/How-to-run-PowerShell-scripts-from-C How to run PowerShell scripts from C#]
 
 
==FAQ==
 
 
===軟體套件安裝===
 
===軟體套件安裝===
 
*[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://blog.darkthread.net/blog/ps-func-param-syntax/ PowerShell FAQ - 函式多參數寫法陷阱-黑暗執行緒]
+
*[https://docs.microsoft.com/zh-tw/powershell/scripting/install/windows-powershell-system-requirements Windows PowerShell 系統需求]
*[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 版本差異-黑暗執行緒]
+
**[http://social.technet.microsoft.com/Forums/zh-TW/powershellzhcht/threads Windows PowerShell 論壇]
*[https://blog.darkthread.net/blog/exe-output-stream-to-ps-pipeline/ 使用 PowerShell 串接 EXE 輸出串流結果-黑暗執行緒]
+
**[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】
  
==相關==
 
*[http://www.pstips.net/ PowerShell 中文博客] - ''收集和分享PowerShell相关教程,技术和最新动态''
 
  
 
[[Category:軟體]]
 
[[Category:軟體]]

於 2022年1月8日 (六) 18:55 的修訂

PowerShell,參照:『維基百科~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

使用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天的資料庫備份檔

# 清除超過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批次轉檔

文字亂碼

計算檔案的雜湊值

其他

安裝
啟動方法
  • 【開始】→【執行】→【powershell】