Ringkasan Eksekutif (TL; DR)
- Gunakan
pwduntuk mengetahui di mana Anda berada (atau melihat di antara :dan $di prompt Anda).
- Gunakan
cduntuk mengubah direktori di tempat lain. Berbeda dengan di Windows, cdharus selalu diikuti oleh spasi; perintah suka cd/dan cd..tidak akan bekerja, tetapi cd /dan cd ..akan.
Mengetahui Di Mana Anda Berada
Cara 1: Jalankan pwd.
Direktori tempat Anda berada saat ini khusus untuk shell (dan lebih umum, khusus aplikasi). Anda bisa menjalankan satu shell di mana Anda berada di satu direktori, dan shell lain di mana Anda berada di direktori lain.
Untuk mengetahui direktori tempat Anda berada saat ini, jalankan:
pwd
Misalnya (dari shell yang kebetulan saya buka sekarang, di komputer saya):
ek@Kip:~$ pwd
/home/ek
Ini memberitahu saya bahwa saya ada di direktori /home/ek. /homeadalah (agak membingungkan) direktori yang berisi direktori home pengguna manusia (itu sendiri bukan direktori home user). Pengguna manusia usernamememiliki direktori home ./home/username
The rootpengguna tidak memiliki direktori home di /home. Sebaliknya, rootdirektori home adalah /root. Ini tidak harus bingung dengan direktori root , yaitu /.
Cara 2: Periksa prompt Anda.
Konfigurasi default untuk prompt Anda adalah bahwa ia memberi tahu Anda direktori apa yang sedang Anda masuki. Permintaan Anda adalah teks yang muncul untuk memberi tahu Anda bahwa shell siap menerima perintah.
Dalam contoh yang Anda tunjukkan pada kami dalam pertanyaan Anda, pertanyaan Anda adalah:
christy@ubuntu:~$
christyadalah nama pengguna kamu. The @karakter memisahkannya dari ubuntu, nama host komputer Anda. (Jika Anda menjalankan live CD, nama hostnya adalah ubuntu, dan beberapa orang memilih itu sebagai nama komputer mereka selama instalasi juga.)
The :karakter memisahkannya dari nama direktori anda sedang berada. Dalam hal ini, yang diwakili oleh ~. ~adalah singkatan untuk direktori home Anda. Ketika Anda tidak berada di direktori home Anda, Anda akan melihat nama direktori lengkap. Sebagai contoh:
ek@Kip:~$ cd /var/log
ek@Kip:/var/log$
(Untuk menyelesaikan apa artinya setiap bagian dari prompt: Untuk prompt yang mengikuti konvensi ini, baik a $atau #karakter muncul. $, Seperti dalam kasus ini, berarti itu adalah shell pengguna normal. #Karakter akan berarti itu adalah rootshell.)
Mengubah Di Mana Anda Berada
Mengapa perintah "cd" Anda tidak berfungsi.
Untuk mengubah direktori, gunakan cdperintah.
Kamu berlari cd/. Ini tidak berfungsi karena Anda sebenarnya tidak menjalankan cdperintah. Di Ubuntu dan sistem operasi mirip Unix lainnya (sebenarnya, dalam shell bergaya Unix seperti bash, shell yang Anda gunakan), nama perintah dianggap berakhir hanya pada spasi atau di akhir baris.
Jadi tidak seperti di Command Prompt di Windows (di mana cd\ditafsirkan sama dengan cd \dan cd..ditafsirkan sama dengan cd ..), di bash(shell yang Anda gunakan di Ubuntu), cd/bukan perintah yang valid. Anda harus menggunakan cd /.
cd/berarti "entri dalam direktori saat ini yang namanya cddan yang juga merupakan direktori." Apakah atau tidak subdirektori seperti itu ada, tidak dapat dijalankan sebagai perintah, sehingga baik cara Anda akan mendapatkan error (meskipun apa kesalahan yang Anda dapatkan akan berbeda):
ek@Kip:~$ cd/
bash: cd/: No such file or directory
ek@Kip:~$ mkdir cd
ek@Kip:~$ cd/
bash: cd/: Is a directory
Pindah ke Direktori Rumah Anda
Untuk masuk ke direktori home Anda, jalankan cddengan sendirinya tanpa argumen:
cd
Beberapa orang lebih suka memberi nama direktori home mereka secara eksplisit. Anda dapat menggunakan nama lengkapnya, atau
cd ~
Tapi cddengan sendirinya sudah cukup.
Memindahkan Satu Direktori
Untuk mengubah direktori ke direktori induk direktori saat ini (yaitu, direktori yang berisi itu), gunakan:
cd ..
..mewakili direktori induk direktori saat ini. Jika Anda berada di direktori root ( /), ada pengecualian: ..hanya mewakili /. Jadi menjalankan cd ..pindah satu direktori ketika dijalankan di mana saja tetapi /; saat dijalankan /, Anda tetap di /.
Setiap direktori berisi ..entri. Mereka juga semua berisi .entri yang merujuk ke direktori saat itu sendiri. Ini tidak terlalu berjalan cd .meskipun. Anda selalu tinggal di mana Anda berada.
Jalan Mutlak dan Relatif
Jika Anda cdke sesuatu yang tidak dimulai dengan /, maka ia mencoba untuk pergi ke direktori tersebut di dalam direktori saat ini .
Misalnya, jika Anda berlari
cd var/log
Maka ia akan mencoba masuk ke varsubdirektori di mana Anda berada saat ini, dan ke dalam logsubdirektori itu. Kecuali keduanya ada, dan di tempat-tempat itu, cdperintah itu akan gagal (dan Anda akan tetap di tempat Anda semula).
Jika Anda ingin pergi ke logsubdirektori varsubdirektori direktori root , jalankan ini sebagai gantinya:
cd /var/log
Hanya jika Anda saat /ini cd var/logsetara dengan cd /var/log.
Jalur yang dimulai dengan /mutlak. Cara penyelesaiannya tidak bergantung pada di mana Anda berada saat ini.
Jalan ~itu mutlak juga, karena itu (pada dasarnya) adalah singkatan $HOME. HOMEadalah variabel lingkungan , dan ekspresi $HOMEdiperluas ke jalur penuh, absolut dari direktori home pengguna saat ini.
~notasi juga dapat digunakan untuk mewakili direktori home pengguna lain . Jika Anda menulis , ini merupakan direktori home.~usernameusername
Kembali ke Tempat Anda Sebelumnya
Direktori tempat Anda berada saat ini disimpan dalam PWDvariabel lingkungan. Direktori terakhir Anda berada disimpan dalam OLDPWDvariabel lingkungan. Anda dapat melihat OLDPWDdengan cara yang sama Anda akan melihat variabel lingkungan apa pun:
echo $OLDPWD
Karena informasi ini disimpan, cddapat memiliki cara khusus, cepat dan mudah untuk kembali ke tempat Anda sebelumnya. Seperti yang dikatakan pst007x , untuk pergi ke direktori terakhir Anda, jalankan:
cd -
Jika tidak pernah ada direktori sebelumnya Anda berada di shell itu , maka OLDPWDvariabel lingkungan tidak akan ditetapkan, dan mencoba menjalankan cd -akan menghasilkan kesalahan (dan Anda akan tetap di tempat Anda berada):
ek@Kip:~$ cd -
bash: cd: OLDPWD not set
Mengubah Di Mana Anda Seperti Seorang Bos
pushddan popd: Stack Direktori
Bayangkan setumpuk nama direktori. Dengan tumpukan , maksud saya sesuatu di mana ketika Anda menambahkan sesuatu di bagian atas, dan Anda hanya dapat menghapus satu hal pada suatu waktu, dan hal yang Anda hapus selalu apa yang saat ini di atas.
Anda dapat mendorong direktori mana saja dirke tumpukan dengan menjalankan:
pushd dir
Jika Anda ingin mendorong direktori saat ini ke atas tumpukan, Anda dapat menggunakan .(yang, seperti dijelaskan di atas, selalu mewakili direktori saat ini):
pushd .
Kemudian Anda dapat pergi tentang bisnis Anda, mengubah direktori sebanyak yang Anda suka. Saat Anda ingin kembali ke direktori terakhir yang Anda dorong ke tumpukan pushd, jalankan:
popd
Ini pergi ke direktori tersebut, dan juga muncul itu dari tumpukan. Sekarang tumpukan lebih pendek satu direktori. Jika itu adalah satu-satunya direktori pada stack, maka stack sekarang kosong.
Anda dapat memiliki tumpukan dengan ukuran lebih besar dari 1. Artinya, Anda dapat menggunakan pushdperintah terpisah untuk mendorong beberapa direktori ke tumpukan. Setiap popdperintah selanjutnya akan pergi ke (dan pop off, yaitu, menghapus dari, tumpukan ) direktori yang paling baru didorong belum muncul.
Ini sebuah contoh:
ek@Kip:~$ cd /etc/apt/sources.list.d
ek@Kip:/etc/apt/sources.list.d$ pushd .
/etc/apt/sources.list.d /etc/apt/sources.list.d
ek@Kip:/etc/apt/sources.list.d$ pushd /home/ek
~ /etc/apt/sources.list.d /etc/apt/sources.list.d
ek@Kip:~$ cd /var/log/apt
ek@Kip:/var/log/apt$ pushd .
/var/log/apt /var/log/apt /etc/apt/sources.list.d /etc/apt/sources.list.d
ek@Kip:/var/log/apt$ cd
ek@Kip:~$ popd
/var/log/apt /etc/apt/sources.list.d /etc/apt/sources.list.d
ek@Kip:/var/log/apt$ popd
/etc/apt/sources.list.d /etc/apt/sources.list.d
ek@Kip:/etc/apt/sources.list.d$ cd /
ek@Kip:/$ pushd usr
/usr / /etc/apt/sources.list.d
ek@Kip:/usr$ cd
ek@Kip:~$ popd
/ /etc/apt/sources.list.d
ek@Kip:/$ popd
/etc/apt/sources.list.d
ek@Kip:/etc/apt/sources.list.d$ popd
bash: popd: directory stack empty
ek@Kip:/etc/apt/sources.list.d$
pushddan popddigunakan jauh lebih jarang daripada cd. Mereka juga memiliki kegunaan lain, bahkan lebih maju. Jalankan help pushddan help popduntuk detail.
Belajar Lebih Banyak dan Mengakses Dokumentasi
cddan pwdmemiliki kegunaan yang lebih maju juga. Untuk mempelajarinya, jalankan help cddan man pwd.
helpadalah untuk builtin shell . manadalah untuk perintah mandiri - perintah yang dijalankan sebagai proses terpisah dan ada sebagai executable terpisah. The typeperintah mengungkapkan jika perintah adalah builtin shell atau tidak, dan jika tidak, dimana program itu berjalan berada. Misalnya, Anda dapat menjalankan type help, type typeatau type man.