Tidak persis dengan cara yang sama yang saya sadari. Salah satu opsi adalah menggunakan pushd bukan cd. Maka popd akan membawa Anda kembali.
Anda juga dapat mengubah profil Anda sehingga setiap kali muncul prompt baru (pada dasarnya setiap kali Anda menekan enter). Itu akan mendapatkan PWD dan membandingkannya dengan yang sebelumnya. Jika mereka berbeda, maka masukkan nilai itu ke tumpukan. Kemudian Anda akan memasukkan fungsi lain di profil Anda yang disebut sesuatu seperti cdb yang akan mengeluarkan item terakhir dari stack dan cd ke sana.
Ini terdengar seperti menyenangkan jadi saya datang dengan sebuah solusi. Masukkan semua kode ini ke profil Anda ( about_Profiles ).
[System.Collections.Stack]$GLOBAL:dirStack = @()
$GLOBAL:oldDir = ''
$GLOBAL:addToStack = $true
function prompt
{
Write-Host "PS $(get-location)>" -NoNewLine -foregroundcolor Magenta
$GLOBAL:nowPath = (Get-Location).Path
if(($nowPath -ne $oldDir) -AND $GLOBAL:addToStack){
$GLOBAL:dirStack.Push($oldDir)
$GLOBAL:oldDir = $nowPath
}
$GLOBAL:AddToStack = $true
return ' '
}
function BackOneDir{
$lastDir = $GLOBAL:dirStack.Pop()
$GLOBAL:addToStack = $false
cd $lastDir
}
Set-Alias bd BackOneDir
Sekarang Anda dapat melakukan cd seperti biasa dan bd akan membawa Anda kembali ke lokasi dalam riwayat lokasi Anda.
pushd
ingin menavigasi ke direktori baru, Anda bisapopd
kembali ke yang sebelumnya. Ini bekerja di Bash, PowerShell dan bahkan baris perintah Windows sebelumnya.