Replace default cd alias with cd function

Define cd to work more like Unix/Linux:

* No path argument changes to the users home directory
* Passing "-" for the path argument changes to the previous directory
This commit is contained in:
Kenneth Benzie 2024-12-13 20:35:12 +00:00
parent 75496f76cd
commit d219cd1479
3 changed files with 21 additions and 6 deletions

View File

@ -1,4 +1,4 @@
# Remove these aliases to PowerShell builtins which clobber the actaul exes.
Remove-Item alias:curl
Remove-Item alias:wget
# TODO: Remove default abbriviation aliases
# Remove builtin aliases
Remove-Item Alias:curl
Remove-Item Alias:wget
Remove-Item Alias:cd

View File

@ -11,4 +11,5 @@ $OutputEncoding = New-Object -typename System.Text.UTF8Encoding
. $PSScriptRoot\alias.ps1
. $PSScriptRoot\utils.ps1
. $PSScriptRoot\layout.ps1
# TODO: $PSScriptRoot\build.ps1
# TODO: . $PSScriptRoot\build.ps1
# TODO: . $PSScriptRoot\autoenv.ps1

View File

@ -1,2 +1,16 @@
# TODO: Define cd to work with zero args for home and - for last directory
# Define cd to work more like Unix/Linux:
# * No path argument changes to the users home directory
# * Passing "-" for the path argument changes to the previous directory
$Global:cdPreviousPath = Get-Location
function cd {
Param ([string]$Path)
if ($Path -eq "") {
$Path = "~"
} elseif ($Path -eq "-") {
$Path = $cdPreviousPath
}
$Global:cdPreviousPath = Get-Location
Set-Location -Path $Path
}
# TODO: Define rm to work with -rf and multiple entries