PowerShell/scripts/cd-screenshots.ps1

37 lines
1.1 KiB
PowerShell
Raw Normal View History

2024-10-01 15:11:03 +02:00
<#
2022-07-22 08:02:43 +02:00
.SYNOPSIS
Sets the working directory to the user's screenshots folder
.DESCRIPTION
This PowerShell script changes the working directory to the user's screenshots folder.
.EXAMPLE
PS> ./cd-screenshots
📂C:\Users\Markus\Pictures\Screenshots
.LINK
https://github.com/fleschutz/PowerShell
.NOTES
Author: Markus Fleschutz | License: CC0
#>
2022-12-19 07:57:35 +01:00
function GetScreenshotsFolder {
if ($IsLinux) {
2024-10-30 13:19:56 +01:00
$path = "~/Pictures"
if (-not(Test-Path "$path" -pathType container)) { throw "Pictures folder at $path doesn't exist (yet)" }
if (Test-Path "$path/Screenshots" -pathType container) { $path = "$path/Screenshots" }
2022-12-19 07:57:35 +01:00
} else {
2024-10-30 13:19:56 +01:00
$path = [Environment]::GetFolderPath('MyPictures')
if (-not(Test-Path "$path" -pathType container)) { throw "Pictures folder at $path doesn't exist (yet)" }
if (Test-Path "$path\Screenshots" -pathType container) { $path = "$path\Screenshots" }
2022-12-19 07:57:35 +01:00
}
2024-10-30 13:19:56 +01:00
return $path
2022-12-19 07:57:35 +01:00
}
2022-07-22 08:02:43 +02:00
try {
2024-10-30 13:19:56 +01:00
$path = GetScreenshotsFolder
Set-Location "$path"
"📂$path"
2022-07-22 08:02:43 +02:00
exit 0 # success
} catch {
"⚠️ Error in line $($_.InvocationInfo.ScriptLineNumber): $($Error[0])"
exit 1
2024-10-30 13:19:56 +01:00
}