Terminalde, cd
komut ile dizini değiştirirken bulunduğum önceki dizine gitmek için bir anahtarı nasıl tanımlayabilirim ?
Mesela ben içerideyim /opt/soft/bin
ve ben cd
içeri giriyorum /etc/squid3
ve ilk dizine geri dönmek istiyorum.
Terminalde, cd
komut ile dizini değiştirirken bulunduğum önceki dizine gitmek için bir anahtarı nasıl tanımlayabilirim ?
Mesela ben içerideyim /opt/soft/bin
ve ben cd
içeri giriyorum /etc/squid3
ve ilk dizine geri dönmek istiyorum.
Yanıtlar:
Kullanabilirsiniz
cd -
ya da kullanabilirsiniz
cd $OLDPWD
cd -
. Örneğin yazdığınızda cd /usr/local
, içinde bulunduğunuzu biliyorsunuzdur /usr/loal
, ancak yazarken cd -
hangi dizinden geldiğinizi her zaman hatırlamıyorsunuz. Böylece sizi yazarak kurtarır cd -; pwd
. Ama hepsi bu spekülasyon.
alias -- -='cd -'
sonra -
(4 karakter) yerine (1 karakter) kullanın cd -
. Daha hızlı:D
cd -
İki kere yapabilirsiniz . İçeride cd /; cd /usr; cd -; cd -
olmalısın /usr
. Ama belki sorunuzu özlüyorum özledim.
Diğer cevaplar kesinlikle doğrudan cevap anlamında tamamlanmıştır. cd -
ve cd $OLDPWD
kesinlikle bunun için ana seçimlerdir. Ancak, genellikle bunun bir iş akışına girdiğini pushd
ve popd
daha iyi çalıştığını tespit ediyorum .
Uzun lafın kısası, başladığınız yere geri dönme niyeti olan bir dizine geçiyorsanız, pushd
/ kullanın popd
.
En büyük fark, bir örnekle kolayca gösterilir.
$ cd dir1
$ pushd dir2
Bu noktada, bir dizin yığını var dir2, dir1
. pushd
Hiçbir argüman olmadan koşmak , sizi dir1
şimdi olduğu gibi yığınla geri koyacaktır dir1, dir2
. popd
aynısını yapardı, ama sizi boş bir dizin yığınıyla bırakırdı. Bu, cd -
iş akışında nasıl olacağınızdan çok farklı değil .
Ancak, şimdi dizinleri birden çok kez değiştirip geri dönebilirsiniz dir1
. Örneğin,
$ cd dir1
$ pushd dir2
$ cd dir3
Eğer çalıştırırsanız popd
bu noktada, geri gidecek dir1
.
pushd
ve popd
-ing yaparken önceki klasöre dönün .
dirs -v
, ancak benim için gerçek şu ki basit vaka gerçekten kullandığım tek şey. (Ya da daha kötüsü, çalışırken push +2
ya da benzeri bir şeyi yaparken hata yapıyorum ) Ayrıca, bebeğin iş akışını denemesi için birinin adım attığını düşündüm. :)
cd
yığmadan haşhaş üste?
Kullanmalısın:
cd ~-
cd -
Dizinin can sıkıcı yankısı olmadan (şu anda kabul edilen cevaptan) aynı şeyi yapar ve yazmak cd "$OLDPWD"
ya da'dan daha kolaydır cd - > /dev/null
.
alias -- -='cd "$OLDPWD"'
kullanarak yapmayı deneyebileceğinizi düşünüyorum . -
cd ~-
:)
cd ~-/..
yarıyor ama cd -/..
yapmıyor!
'~ / .Bashrc' dosyanızı düzenleyerek ve komut için bir diğer ad ekleyerek 'cd -' için bir anahtar tanımlayabilirsiniz. Örneğin, 'cd -' yapmak için 'cdc' ekleyebilirsiniz, bu da ekleyerek son dizine ulaşmanız için daha kısa bir yol sağlar:
alias cdc='cd -'
Bu şekilde basitçe 'cdc' yazacaksınız ve sizi en son çalışan dizine koyacaksınız.
bind '"\e[24~":"\C-k \C-ucd -\n"'
(ya da daha çok tercihen inputrc
cevabında belirtilen dosyaya taşı).