Bagaimana saya menavigasi antar direktori di terminal?


26

Saya baru mengenal Linux dan Ubuntu dan telah mencoba mengubah ke folder / direktori dengan sedikit kesulitan.

Bisakah seseorang menjelaskan mengapa perintah berikut gagal berubah ke folder / direktori target yang diinginkan?

sharon@sharon:~$ cd Home 
bash: cd: Home: No such file or directory 
sharon@sharon:~$ cd /Home 
bash: cd: /Home: No such file or directory 
sharon@sharon:~$ cd Documents 
sharon@sharon:~/Documents$ cd Downloads 
bash: cd: Downloads: No such file or directory 
sharon@sharon:~/Documents$ cd /Downloads 
bash: cd: /Downloads: No such file or directory 
sharon@sharon:~/Documents$

Jawaban:


38

Sistem file adalah GNU / Linux seperti pohon, kecuali bahwa root ada di atas. :-) Jadi Anda memiliki struktur seperti:

/
  bin/
  home/
    sharon/
      Documents/
      Downloads/
      fileA.txt
      fileB.jpg
  usr/
  var/

Jika Anda ingin pindah ke dalam pohon, satu opsi adalah menggunakan jalur relatif. Jika Anda masuk /home/sharon, maka pengetikan cd Downloadsakan berfungsi, karena Unduhan adalah anak langsung dari direktori Anda saat ini. Jika Anda berada di subfolder Documentsdan ingin mengubah direktori ( cd) menjadi Downloads, Anda harus naik ( ..) lalu ke Downloads. Jadi perintah yang benar adalah cd ../Downloads.

Anda juga bisa memasukkan jalur absolut. Jadi Downloadsfolder tersebut adalah subfolder sharonyang merupakan subfoldernya homeadalah ... (Anda mendapatkan idenya :-)) Jadi Anda juga dapat memasukkan di cd /home/sharon/Downloadsmana pun Anda berada di sistem file.

  • ~selalu merujuk ke direktori home dari pengguna saat ini ( /home/sharondalam kasus Anda). Jika Anda masuk, cd ~/DownloadsAnda akan mendarat di Downloadsfolder Anda .

  • .merujuk ke direktori saat ini, jadi cd ./Downloadskira-kira setara dengan cd Downloads.

  • .. berarti "direktori induk".

  • / pada awal path file merujuk ke direktori root.

Yang menyenangkan berikutnya adalah ekspansi tab. Jika Anda memasukkan cd ~/DowTab(yang terakhir adalah menekan tombol Tabulator), bash secara otomatis memperluasnya ke cd ~/Downloads.

Seperti yang lain mengatakan GNU / Linux adalah case-sensitive. Jadi ada bedanya jika Anda masuk Home, hOmeatau home. Selanjutnya saya harap Anda melihat sekarang bahwa ada perbedaan antara /homedan home. Yang pertama adalah absolute absolut sedangkan yang terakhir relatif terhadap direktori Anda saat ini.


1
@ qbi: Wow, Anda luar biasa. Saya suka penjelasan detail Anda tentang cara menavigasi di antara folder / direktori. Apakah Anda seorang guru atau profesor di lembaga pendidikan? Sebagian besar orang IT tahu banyak hal IT tetapi memecah konsep untuk dikelola dan "dicerna" sehingga pemula dapat mengerti hanya dalam genggaman segelintir orang yang berbakat seperti Anda.
n00b

2
@ n00b Jika ternyata jawaban ini bermanfaat, Anda dapat "menerimanya" dengan mengeklik V di sebelah kiri.
Revetahw mengatakan Reinstate Monica

8
sharon@sharon:~$ cd Home 
bash: cd: Home: No such file or directory 

Cedilla kecil ~ menunjukkan Anda sudah berada di direktori / home / sharon Anda. Ketika Anda meminta 'cd Home' terminal mencari / home / sharon / Home. Tidak ada.

sharon@sharon:~$ cd /Home 
bash: cd: /Home: No such file or directory 

Sekarang Anda bertanya, diberikan garis miring, untuk pergi ke direktori di atas lokasi saat ini; itu adalah / home / Home. Tidak ada.

sharon@sharon:~$ cd Documents 
sharon@sharon:~/Documents$

Keberhasilan!

sharon@sharon:~/Documents$ cd /Downloads 
bash: cd: /Downloads: No such file or directory 

Saya tidak terlalu yakin di mana tepatnya ini. Jika Anda ingin mengubah dari / home / sharon / Documents ke / home / sharon / Downloads, silakan coba:

cd ~/Downloads

Jika Anda ingin langsung ke direktori home Anda, yaitu / home / sharon, cukup lakukan:

cd

Anda juga dapat melangkah mundur

cd ..

Dan Anda dapat mencetak direktori tempat Anda bekerja (mencetak direktori kerja)

pwd

@ chili555: Terima kasih banyak telah membantu pemula seperti saya. Selamat Natal untuk Anda dan orang yang Anda cintai.
n00b

2
Slash utama menunjukkan jalur relatif ke root, bukan yang di atas direktori saat ini. Itu akan menjadi../
psusi

3

Perintah itu memberi tahu Anda alasannya: Tidak ada direktori seperti itu.

Nama file peka huruf besar kecil, jadi / home, bukan / Home. Tanpa garis miring terkemuka, itu dianggap relatif terhadap direktori saat ini, dan direktori Unduhan tidak ada di ~ / Documents, juga tidak ada di /, tetapi di direktori home Anda, yang ~merupakan jalan pintas, dengan demikian adalah ~ / Dokumen


@ psusi: Terima kasih juga. Selamat Natal untuk Anda dan orang yang Anda cintai.
n00b

@ psusi: Apa arti slash terkemuka?
n00b

@ psusi: Apa artinya ./ <nama file>?
n00b

@noob, /berarti mulai dari direktori root dan .berarti direktori saat ini.
psusi

0

Saya harus menjawab ini, karena saya tidak bisa mengomentari jawaban -.-

Apa arti slash utama? - n00b

itu berarti bahwa kurus yang Anda bicarakan adalah direktori bukan file. File tidak harus memiliki ujung file seperti di Windows, jadi itu ~/thisIsAFileakan menjadi file di direktori home Anda tetapi ~/thisIsAFile/akan menjadi direktori / folder.

Apa maksudnya? - n00b

Itu berarti file yang ingin Anda akses ada di direktori Anda saat ini.

Kiat bermanfaat lainnya:

Anda dapat kembali ke folder

cd ..

Dan Anda bisa mendapatkan jalur yang Anda gunakan (mencetak direktori kerja)

pwd

@ a2r: Terima kasih atas klarifikasi. Saya tidak tahu bahwa file tidak memiliki ekstensi file seperti di Microsoft Windows. Apakah program juga memiliki ekstensi file di Ubuntu?
n00b

Secara umum tidak, sistem tidak peduli apa ujung file memiliki, jika ditandai sebagai executable (google about chmod) maka Anda dapat menjalankannya sebagai program. Juga ada variabel global (google about it) yang disebut $ PATH ada direktori tampilan yang disimpan (Anda dapat melihat ada dengan echo $PATH). Dan ketika Anda mencoba menjalankan program seperti Anda mengetik geditdi terminal. Sistem Anda terlihat melempar folder dalam $ PATH dan mencari gedit.
a2r

1
Itu akan menjadi garis miring, bukan garis miring. Anda juga harus memiliki ruang di sana sebelum ...
psusi

@ psusi: Maaf. Saya agak bingung di sini. Apa itu garis miring? slash terkemuka? Contohnya tolong? Terima kasih sebelumnya.
n00b
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.