PowerShell/Scripts/cd-recycle-bin.ps1

37 lines
971 B
PowerShell
Raw Normal View History

2021-09-27 10:38:12 +02:00
<#
2021-07-13 21:10:02 +02:00
.SYNOPSIS
2021-10-12 21:51:51 +02:00
Sets the working directory to the user's recycle bin folder
2021-10-04 21:29:23 +02:00
.DESCRIPTION
2022-01-29 12:47:46 +01:00
This PowerShell script changes the working directory to the user's recycle bin folder.
2021-07-13 21:10:02 +02:00
.EXAMPLE
2021-09-24 17:19:49 +02:00
PS> ./cd-recycle-bin
2021-10-04 17:42:06 +02:00
📂C:\$Recycle.Bin\S-1-5-21-123404-23309-294260-1001
2021-07-13 21:10:02 +02:00
.LINK
https://github.com/fleschutz/PowerShell
.NOTES
2022-05-04 11:50:18 +02:00
Author: Markus Fleschutz | License: CC0
2021-05-02 11:38:19 +02:00
#>
2022-04-13 12:06:32 +02:00
function GetCurrentUserSID { [CmdletBinding()] param()
2021-05-02 11:38:19 +02:00
Add-Type -AssemblyName System.DirectoryServices.AccountManagement
return ([System.DirectoryServices.AccountManagement.UserPrincipal]::Current).SID.Value
}
2021-10-19 08:24:17 +02:00
try {
2022-12-28 14:31:08 +01:00
if ($IsLinux) {
$Path = "$HOME/.local/share/Trash/"
} else {
$Path = "C:\$Recycle.Bin\" + "$(GetCurrentUserSID)"
}
2022-05-04 11:50:18 +02:00
if (-not(Test-Path "$Path" -pathType container)) {
throw "Recycle bin folder at 📂$Path doesn't exist (yet)"
2021-10-19 08:24:17 +02:00
}
2022-05-04 11:50:18 +02:00
Set-Location "$Path"
"📂$Path"
2021-10-19 08:24:17 +02:00
exit 0 # success
} catch {
2022-04-13 12:06:32 +02:00
"⚠️ Error in line $($_.InvocationInfo.ScriptLineNumber): $($Error[0])"
2021-05-02 11:51:41 +02:00
exit 1
}