Bagaimana cara menavigasi satu direktori dari terminal?


16

Pertanyaan noob super: Saya dapat menavigasi ke dalam direktori menggunakan cddari terminal. Bagaimana cara saya menavigasi kembali jika saya pergi terlalu jauh?



unix.stackexchange.com/a/81232/18237 bagus untuk bekerja di banyak cabang direktori, dan menandai titik "awal" untuk kembali ke
Mateo

Saya tahu tidak ada di antara Anda yang mau mengakui bahwa Anda sebodoh ini, tetapi pertanyaan ini baru saja menyentuh 1.000 pandangan. jadi haha saya tahu orang lain seperti saya ada di luar sana. : P
Vince Scalia

Jawaban:


30

cd .. akan membawa Anda kembali tepat satu direktori ke atas.

Anda dapat merangkai bersama mereka untuk naik beberapa direktori, misalnya naik 3

cd ../../..

Alih-alih mengetik cd ..berkali-kali, yang bisa Anda lakukan adalah menempatkan fungsi di bawah .bashrcdi suatu tempat di bagian atas, menyimpan .bashrc, dan menjalankan source .bashrcatau hanya menutup dan membuka kembali terminal. Sekarang, Anda memiliki fungsi yang tidak cd..persis berapa kali Anda mengatakannya.

function goUp {
  num=$1
  while [ $num -ne 0  ];do
    cd ..
    num=$((num-1))
  done
}

Demo:

$ cd /usr/share/backgrounds/                                                  

backgrounds:$ goUp 2

usr:$ 

Kalau tidak:

goup(){ 
    cd $(n=$1 awk 'BEGIN{
        for(i=1;i<=ENVIRON["n"];i++) 
            printf "../"}';) 
}

Perhatikan bahwa metode tersebut membawa Anda kembali ke sepanjang symlink. Inilah yang saya maksud:

$ namei "$PWD" 
f: /home/user/VirtualBox VMs/CentOS
 d /
 d home
 d user
 l VirtualBox VMs -> /mnt/ubuntu/vboxvms
   d /
   d mnt
   d ubuntu
   d vboxvms
 d CentOS

$ goup 2
$ pwd
/home/user

Lihat juga


Menambahkan beberapa info lagi, periksa.
Sergiy Kolodyazhnyy

Itu bisa saja adil for i in $(seq "$1"); do cd ..; done.
deltab

@dabab benar, bisa dilakukan juga. . . Tapi saya lebih suka menggunakan while + counter untuk mensimulasikan for for. Saya telah mengajukan pertanyaan yang relevan sebelumnya di situs U&L
Sergiy Kolodyazhnyy
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.