「PowerShell」修訂間的差異

出自ProgWiki
跳至導覽 跳至搜尋
→‎FAQ
行 98: 行 98:
 
#執行項目
 
#執行項目
 
[System.Diagnostics.Process]::Start("C:\Client\client.exe", "")
 
[System.Diagnostics.Process]::Start("C:\Client\client.exe", "")
 +
</source>
 +
===除超過30天的資料庫備份檔===
 +
*參考: [https://medium.com/@jamieleetw95/powershell-%E8%87%AA%E5%8B%95%E5%88%AA%E9%99%A4%E6%AA%94%E6%A1%88-%E6%8C%89%E7%85%A7%E6%AA%94%E6%A1%88%E4%BF%AE%E6%94%B9%E6%97%A5-%E4%BF%9D%E7%95%99%E8%BF%91n%E5%A4%A9%E5%85%A7%E7%9A%84%E6%AA%94%E6%A1%88-46eabad9f465 用PowerShell刪除N天前或指定日期(前後)建立(或修改)的檔案 | 程式前沿]
 +
<source lang="powershell">
 +
#取今日時間
 +
$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"
 +
    }   
 +
}
 
</source>
 
</source>
  

於 2020年5月25日 (一) 18:35 的修訂

PowerShell

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

技術文件

常用指令

  • Get-Help
取得指令的使用說明
  • exit
離開PowerShell
  • HELP
線上說明
  • kill
停止執行中的程序
  • ps
顯示執行中的程序狀態

相關套件

應用

C#

FAQ

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

#取今日時間
$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"
    }    
}

相關