Smarter directory navigation for PowerShell: stack-based movement, recent and frecent jumps,
abbreviated paths, multi-dot cd, and enhanced path completion.
From the gallery:
Install-Module cd-extras
Import-Module cd-extras
# add to profile. e.g:
Add-Content $PROFILE `n, 'Import-Module cd-extras'or get the latest from github:
git clone https://github.com/nickcox/cd-extras.git
Import-Module cd-extras/cd-extras/cd-extras.psd1 # yep, three :DNavigate backward, forward, and upward through directory history:
[C:/Windows/System32]> up # or ..
[C:/Windows]> cd- # or ~
[C:/Windows/System32]> cd+ # or ~~
[C:/Windows]> cdr # jump to recent directoryUse abbreviated paths with cd:
[~]> cd pr/cd
[~/projects/cd-extras]> _Or skip typing cd altogether with AUTO_CD:
[~]> projects
[~/projects]> cd-extras
[~/projects/cd-extras]> /
[C:/]> _| Command | Alias | Description |
|---|---|---|
Undo-Location |
cd-, ~ |
Move backward through location history |
Redo-Location |
cd+, ~~ |
Move forward through location history |
Step-Up |
up, .. |
Move to a parent directory |
Set-RecentLocation |
cdr |
Jump to a recent directory |
Set-FrecentLocation |
cdf |
Jump using frecency |
Add-Bookmark |
mark |
Bookmark a directory |
Remove-Bookmark |
unmark |
Remove a bookmark |
Get-Ancestors |
xup |
List ancestor directories |
Get-Stack |
dirs |
View undo/redo stacks |
Clear-Stack |
dirsc |
Clear undo/redo stacks |
Get-Up |
gup |
Get ancestor directory path |
Expand-Path |
xpa |
Expand abbreviated paths |
Switch-LocationPart |
cd: |
Replace part of the current path |
Set-CdExtrasOption |
setocd |
Configure cd-extras options |
- Navigation guide — backward, forward, upward movement; recent and frecent directories; bookmarks; completions for navigation helpers
cdguide — path shortening, multi-dotcd,AUTO_CD,CD_PATH,CDABLE_VARS- Completion guide — enhanced path completion, extending completion to other commands, colourised completions
- Configuration — full options reference, key handlers, aliasing
Import-Module cd-extras
setocd AUTO_CD $false
setocd CD_PATH '~/Documents/', '~/Downloads'
setocd CDABLE_VARSFor the full options reference, see Configuration.
cd-extras works on Windows, macOS and Linux. It is designed for the filesystem provider but should work with other providers too. See the compatibility section for details on cross-platform setup and alternative providers.