Skip to content

Latest commit

 

History

History
71 lines (60 loc) · 1.83 KB

File metadata and controls

71 lines (60 loc) · 1.83 KB

The 'cd-downloads.ps1' Script

This PowerShell script changes the working directory to the user's downloads folder.

Parameters

PS> ./cd-downloads.ps1 [<CommonParameters>]

[<CommonParameters>]
    This script supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, 
    WarningVariable, OutBuffer, PipelineVariable, and OutVariable.

Example

PS> ./cd-downloads.ps1
📂C:\Users\Markus\Downloads entered, has 0 files and 0 folders.

Notes

Author: Markus Fleschutz | License: CC0

Related Links

https://github.com/fleschutz/PowerShell

Script Content

<#
.SYNOPSIS
	Sets the working directory to the user's downloads folder
.DESCRIPTION
	This PowerShell script changes the working directory to the user's downloads folder.
.EXAMPLE
	PS> ./cd-downloads.ps1
	📂C:\Users\Markus\Downloads entered, has 0 files and 0 folders.
.LINK
	https://github.com/fleschutz/PowerShell
.NOTES
	Author: Markus Fleschutz | License: CC0
#>

#requires -version 5.1

try {
	if ($IsLinux -or $IsMacOS) {
		if (-not(Test-Path "~/Downloads" -pathType container)) { throw "No 'Downloads' folder in your home directory (yet)"
		}
		$path = Resolve-Path "~/Downloads"
	} else {
		$path = (New-Object -ComObject Shell.Application).NameSpace('shell:Downloads').Self.Path
		if (-not(Test-Path "$path" -pathType container)) { throw "The path to downloads folder '$path' doesn't exist (yet)" }
	}
	Set-Location $path
	$files = Get-ChildItem $path -attributes !Directory
	$folders = Get-ChildItem $path -attributes Directory
	"📂$path entered, has $($files.Count) files and $($folders.Count) folders."
	exit 0 # success
} catch {
	"⚠️ Error: $($Error[0])"
	exit 1
}

(page generated by convert-ps2md.ps1 as of 04/19/2026 17:56:56)