2
執行完成後,我可以刪除腳本。執行完成後刪除自身文件夾
function Delete() {
$Invocation = (Get-Variable MyInvocation -Scope 1).Value
$Path = $Invocation.MyCommand.Path
Write-Host $Path
Remove-Item $Path
}
Delete
但我無法刪除腳本運行的整個文件夾和子文件夾。有什麼辦法可以解決這個問題,它可以在powershell2.0和3.0上運行?
要刪除子文件夾和諸如此類的東西,你需要到'-Recurse'參數添加到'刪除,Item'。 – gvee
您可能無法刪除腳本所在的文件夾,因爲腳本文件可能正在使用中。另外,你當前的位置('(Get-Location).Path')不應該是你想要刪除的文件夾。 –
在我的實驗中,即使在PowerShell 2上,您也可以在第一行刪除腳本文件,並繼續處理腳本。它似乎將整個事物讀入記憶中,然後從那裏運行。 我有一個腳本依賴於它,因爲它在網絡上,可以在最多4個工作站上運行,不會阻止我通過更新的版本保存腳本。 –