Shell dan terminal bantuan dan contoh Linux

Shell baris baris adalah antara muka pengguna berasaskan teks untuk sistem pengendalian anda. Tidak seperti shell GUI, yang menggunakan perwakilan grafik bagi perkhidmatan dan sumber sistem, shell baris perintah hanya menggunakan teks. Ia adalah antara muka asas antara anda dan sistem operasi, dan dalam banyak kes menawarkan anda lebih banyak kawalan langsung terhadap proses sistem.

Apakah yang digunakan oleh Shell?

Apabila ia datang untuk berkomunikasi dengan sistem operasi anda, apa-apa yang boleh anda lakukan dengan GUI boleh dilakukan di baris arahan. Sebagai contoh, mari kita ambil sesuatu yang perlu anda lakukan sepanjang masa: pindahkan fail ke dalam sistem fail anda. Menggunakan GUI, anda boleh memilih ikon yang mewakili fail anda, seretnya ke folder lain, dan jatuhkan mereka di sana untuk memindahkannya.

Walau bagaimanapun, dengan menggunakan baris arahan, operasi ini boleh dilakukan dengan menggunakan satu arahan:

Barisan arahan, sebaik sahaja anda membiasakannya, membolehkan anda mengawal sistem anda dengan lebih cekap dan ketepatan daripada dengan GUI.

Kenapa ia dipanggil "Shell"?

Antara muka pengguna disebut sebagai "shell" kerana ia adalah lapisan luar yang memisahkan anda dari bahagian paling dalam sistem operasi, yang disebut kernel. Secara teknikal, GUI sistem operasi anda juga "shell", tetapi garis arahan sering dirujuk secara kasar sebagai "shell".

Bagaimanakah saya dapat masuk Shell Perintah-Line?

Cara yang paling biasa untuk mengakses shell baris perintah menggunakan emulator terminal.

Jika anda menggunakan pengedaran Linux, ia boleh boot ke Sistem X Window (atau "X"), yang membolehkan anda menjalankan program-program dalam tetingkap mereka sendiri dan berinteraksi dengan mereka menggunakan tetikus. Di X, ada cara yang berbeza untuk melancarkan emulator terminal, tetapi di sini adalah yang paling biasa:

  • Banyak pengedaran Linux menggunakan persekitaran desktop yang serupa dengan Microsoft Windows, yang mempunyai "Start Menu". Dari menu ini, aplikasi terminal anda biasanya terletak di bawah "Aksesori." Sebagai contoh, Lubuntu datang dengan emulator terminal LXTerminal yang telah dipasang, dan pintasan terletak di menu Aksesori.

    Memilih item menu terminal melancarkan emulator terminal dan menempatkan anda pada baris arahan.

  • Versi Linux yang berlainan menggunakan pelbagai jenis pengurus tetingkap, masing-masing dengan antara muka yang sedikit berbeza. Dengan banyak pengurus tetingkap, klik kanan desktop menunjukkan menu yang mengandungi pilihan terminal. Contohnya, menu klik kanan di Crunchbang Linux mempunyai pilihan "Terminal". Berikut adalah menu yang kelihatan seperti itu, selepas mengklik kanan mana-mana sahaja di desktop.

    Di sini, menu Aksesori juga akan mempunyai pilihan untuk menjalankan terminal.

  • Pada banyak versi Linux, menekan Super Key dan " T " pada masa yang sama adalah hotkey lalai untuk melancarkan terminal. (Kunci Super biasanya kunci pertama di sebelah kiri bar ruang, juga dikenali sebagai kunci Windows).

Jika anda tidak dapat mengetahui cara melancarkan emulator terminal anda, lihat dokumentasi untuk sistem operasi tertentu anda, dan cari "terminal".

Promosi Perintah

Apabila anda melancarkan emulator terminal, anda dibentangkan dengan arahan arahan.

Nota: Contoh-contoh ini semua dilakukan menggunakan Bourne-Again Shell ( bash ), yang merupakan shell baris perintah lalai di Linux.

Mari lihat arahan ini dengan segera. Gesaan itu boleh dikonfigurasi untuk menjadi apa sahaja yang anda suka, tetapi secara lalai, ia kelihatan seperti apa yang kita lihat di sini, memberikan maklumat berguna kepada kami sebelum kita menaip perintah.

Khususnya, ia memberitahu kita siapa kita (nama pengguna) dan di mana kita berada (apa sistem yang kita gunakan dan direktori kerja kita). Berikut adalah bahagian-bahagian individu dari makna cepat:

nama awakNama pengguna anda.
@Satu pada simbol memisahkan nama pengguna dan nama hos.
yourhostNama hos sistem.
:Tanda titik adalah watak yang memisahkan nama hos dan direktori kerja.
~Direktori semasa kami ("bekerja"). Tilde (" ~ ") adalah watak istimewa yang mewakili direktori rumah kami. Apabila anda memulakan sesi shell, ini adalah direktori di mana anda biasanya mula berfungsi secara lalai.
$Watak istimewa yang menunjukkan bahawa kami tidak mempunyai keistimewaan superuser. Jika log masuk sebagai root (superuser), aksara ini berubah menjadi # .

Memasukkan arahan

Mari taipkan arahan pertama kami. Kita harus mulakan dengan menyenaraikan fail-fail tersebut dalam direktori rumah kita. Cara paling asas untuk melihat semua fail ini adalah dengan menggunakan arahan ls ; ketik ls pada prompt arahan dan tekan enter.

Seperti yang ditunjukkan di atas, arahan ls menyenaraikan kandungan direktori dan meletakkan kami pada prompt arahan lain.

Nota: Semua arahan dan nama fail dalam Unix dan Linux adalah sensitif huruf. Perintah ls, misalnya, mesti ditaip dalam huruf kecil, sama seperti di atas.

Untuk penyenaraian direktori yang lebih terperinci, kami boleh menentukan pilihan baris arahan, yang juga dikenali sebagai suis . Ini adalah hujah tambahan kepada arahan yang mengubah suai cara ia beroperasi. Di sini, kami akan menggunakan pilihan -l (menggunakan format senarai panjang) untuk mendapatkan maklumat lanjut dari penyenaraian kami.

Seperti yang ditunjukkan di atas, arahan ls -l memberikan kami lebih banyak maklumat mengenai kandungan direktori rumah kami. Pada masa ini, maklumat penting yang perlu kita perhatikan adalah bahawa huruf pertama penyenaraian adalah d, yang bermaksud bahawa setiap kandungan direktori itu sendiri direktori.

Sebelum kita melakukan apa-apa lagi, mari kita membersihkan skrin, untuk menghapuskan kekacauan yang dihasilkan oleh output daripada arahan terdahulu. Gunakan arahan yang jelas dengan menaip jelas pada prompt arahan baru dan tekan Enter .

Selepas menekan Enter, skrin membersihkan dan meletakkan anda pada arahan arahan baru di bahagian atas skrin terminal anda.

Menukar direktori

Mari pindahkan ke folder dokumen kami menggunakan perintah cd ("change directory"). Untuk menukar direktori semasa, ketik " cd " dan kemudian ruang, maka nama direktori yang ingin anda ubah dan kemudian tekan enter.

Perintah cd menganggap bahawa nama mana-mana direktori yang anda tetapkan relatif kepada direktori semasa anda. Oleh itu, untuk menukar ke dalam direktori dokumen, yang terdapat dalam direktori semasa kami, taip " dokumen cd ".

Perintah arahan kini mencerminkan direktori kerja baru: ~ / dokumen, yang bersamaan dengan nama laluan lengkap: / home / yourname / dokumen . Tidak kira apa pengguna yang anda log masuk sebagai, " ~ " selalu mewakili direktori rumah anda. Dalam contoh, direktori kerja baru juga dilihat di bar tajuk tetingkap terminal kami.

Nota: Tidak seperti MS-DOS dan Microsoft Windows, nama direktori hierarki di Linux dipisahkan oleh slaid ke hadapan (" / ") dan bukannya backslash (" \ "). Perubahan simbol ini adalah perbezaan asas antara pelbagai sistem operasi ini.

Pada bila-bila masa, anda boleh mengesahkan direktori semasa anda menggunakan perintah pwd ("print working directory").

Arahan mencetak nama direktori semasa ke terminal, dalam kes ini " / home / yourname / documents ". Sekali lagi, dengan " ~ / dokumen " " ~ " mewakili direktori rumah kami, iaitu / home / yourname . Oleh itu, jika kita berada di direktori rumah kami, menaip " cd documents, " " cd / home / yourname / documents, " atau " cd ~ / documents " semuanya akan menempatkan kami dalam direktori yang sama.

Sekarang mari kita naik satu direktori, kembali ke direktori rumah kami. Nama direktori khas " .. " (double-dot) bermaksud "satu direktori sehingga".

Kami kini kembali ke direktori rumah kami.

Nota: Jika anda lebih akrab dengan MS-DOS, perlu diingat bahawa mesti ada ruang antara cd dan dua tempoh.

Memindahkan fail

Sekarang mari kita kenal dengan cara memindahkan fail ke sekitar.

Katakan kita hanya memuat turun dua imej dengan pelayar web, dan mereka disimpan dalam folder muat turun kami. Mari masuk ke sana dan lihat. Pertama, kita menukar direktori ke dalam direktori unduhan.

Kemudian senaraikan fail dalam direktori dengan arahan ls .

Di sini kita melihat dua fail JPEG. Mari mengeluarkannya dari folder muat turun, dan letakkannya di tempat yang lebih sesuai, seperti folder imej. Untuk memindahkan fail-fail ini, kami akan menggunakan perintah mv ("bergerak").

Perintah mv mengambil bentuk umum berikut.

 mv [ PILIHAN ...] SUMBER DESTINASI 

OPTIONS dilampirkan dalam kurungan kerana anda tidak perlu menentukan sebarang pilihan untuk menyelesaikan arahan. Argumen SOURCE dan DESTINATION kedua-duanya diperlukan.

SUMBER adalah nama fail atau fail yang ingin anda alihkan. DESTINATION adalah di mana anda mahu memindahkannya. Jika DESTINATION adalah nama direktori, fail atau fail akan dipindahkan ke direktori itu.

Kami sedang dalam direktori / home / yourname / unduhan dan kami ingin memindahkan fail ke dalam / home / yourname / images . Kami boleh menentukan DESTINATION kami menggunakan nama laluan penuh (" / home / yourname / images "), atau sebagai nama laluan berbanding dengan direktori semasa kami (" ../images "), atau menggunakan tilde sebagai singkatan untuk direktori rumah kami ( " ~ / imej "). Semua ini bersamaan dan memberikan hasil yang sama. Mari gunakan nama laluan relatif untuk DESTINATION kami: ../images .

Jadi, bagaimana kita akan menentukan SUMBER kami?

Kami mahu memindahkan kedua-dua fail itu, dan mereka adalah satu-satunya fail dalam direktori. Jadi, cara paling mudah untuk menentukannya ialah dengan memberitahu mv "memindahkan semua fail dalam direktori ini ke ../images ." Kita boleh melakukan ini menggunakan wildcard.

Kad liar adalah watak istimewa yang boleh mewakili lebih daripada satu nama fail (atau lebih daripada satu bahagian nama fail). Di sini, kami akan menggunakan asterisk wildcard (" * "). Sekiranya kita menggunakan * sebagai nama fail keseluruhan kami, shell menggunakan arahan kami untuk setiap fail dalam direktori kerja kami.

Oleh itu, arahan kami akan dibaca seperti berikut: " mv * ../images ". Mari masukkan sekarang.

Ia kelihatan seperti tiada apa yang berlaku, tetapi itulah cara shell memberitahu kami tidak ada kesilapan yang berlaku. Jika terdapat masalah, ia akan memaparkan mesej ralat atau amaran sejenis.

Mari kita sahkan bahawa fail telah dipindahkan. Kita boleh menyenaraikan kandungan direktori lain dengan menjalankan ls dan menentukan nama laluan. Dalam kes ini, nama laluan kami adalah " ../images ."

Imej ada di sana, bersama dengan direktori lain yang sudah ada (" wallpaper "). Kita harus membuat direktori baru kita sendiri, untuk mengatur imej kita dengan lebih baik dan menyimpan direktori imej utama agar tidak berantakan. Mari buat sekarang.

Membuat direktori

Mari kita tukar ke direktori imej di mana imej penguin kami sekarang tinggal.

Sekarang mari kita buat direktori baru untuk imej penguin kami. Membuat direktori baru dicapai dengan arahan mkdir .

Bentuk yang paling mudah dari perintah mkdir adalah untuk memberikan satu hujah: nama direktori baru. Kami ingin membuat direktori baru dalam direktori semasa kami, jadi kami tidak perlu memberi mkdir nama laluan lengkap, hanya nama direktori itu sendiri. Mari kita panggil penguin-pix direktori kami.

Jadi, arahan yang akan kita masukkan ialah " mkdir penguin-pix " untuk membuat direktori baru.

Sekarang mari kita pastikan ia berada di sana, dengan menyenaraikan kandungan direktori.

Nota: Anda dapat melihat bahawa apabila kami menyenaraikan kandungan direktori, nama fail dan nama direktori adalah warna yang berbeza untuk membantu mengenal pasti fail dan direktori yang berbeza. Walaupun penonjolan warna biasa dengan kebanyakan cangkang, tidak semua cangkang melakukan ini secara lalai.

Sekiranya kita tidak dapat memberitahu dengan warna nama, kita sentiasa dapat memeriksa mana-mana fail ini adalah direktori dengan menggunakan ls dengan pilihan -l (senarai panjang).

Maklumat tambahan termasuk perkara berikut.

  • Kebenaran - yang mempunyai akses kepada fail dan jenis akses apa pun.
  • Pemilikan - siapa pemilik fail itu.
  • Penulisan - yang mencipta fail.
  • Saiz fail - saiz fail dalam bait.
  • mtime - tarikh dan masa fail terakhir diubahsuai.

Huruf pertama pada baris untuk penguin-pix dan wallpaper adalah " d, " menunjukkan bahawa ia adalah direktori. Untuk maklumat lanjut mengenai senarai fail, lihat dokumentasi arahan chmod .

Kita kini boleh memindahkan imej kita ke dalam direktori baru. Untuk memberitahu mv apa file yang hendak dipindahkan, kita boleh menggunakan wildcard lagi, tetapi kali ini mari pastikan ia tahu untuk memindahkan hanya fail gambar, bukan direktori. Oleh kerana kedua-dua fail imej berakhir dengan sambungan JPEG .jpg, kita boleh nyatakan nama fail " * .jpg ": ini memberitahu shell "fail yang saya hendak pindahkan adalah sebarang fail dalam direktori semasa yang berakhir dengan .jpg ". Jadi perintah kami akan kelihatan seperti ini: " mv * .jpg penguin-pix ."

Tiada mesej ralat diberikan, bermakna perintah itu selesai dengan jayanya. Mari kita pastikan fail dipindahkan dengan menyenaraikan kandungan penguin-pix .

Mengalih keluar fail

Kami mempunyai dua gambar penguin, tetapi mungkin kami memutuskan bahawa kami hanya memerlukan real-penguin.jpg, dan kami tidak memerlukan tux-the-penguin.jpg lagi. Kita boleh memadamkan fail ini dengan menggunakan arahan rm ("keluarkan").

Kami perlu menyediakan rm dengan nama fail untuk memadam. Kami kini berada dalam direktori imej, tetapi imej kami kini berada dalam subdirektori penguin-pix . Kita boleh menukar direktori kerja kita ke penguin-pix dan kemudian jalankan perintah itu, tetapi itu hanya kerja tambahan, kita boleh melangkau langkah itu dengan menggunakan direktori sebagai sebahagian daripada jalan.

Perintah kami akan kelihatan seperti ini: " rm penguin-pix / tux-the-penguin.jpg ."

Sekali lagi, shell melaksanakan arahan kami tanpa memberi maklum balas. Perintah tersebut dilaksanakan dengan jayanya, sehingga shell mengembalikan kita ke command prompt, memberitahu kami bahawa ia sudah siap untuk perintah yang lain.

Amaran: Tidak seperti menyeret fail ke sampah atau kitar semula Microsoft Windows, tidak ada cara untuk membatalkan penghapusan fail dengan rm . Keluarkan fail anda dengan berhati-hati! Setelah pergi, ia (hampir) mustahil untuk mendapatkannya kembali.

Mari kita sahkan bahawa fail itu benar-benar hilang.

Mengalih keluar direktori

Itu bagus untuk fail, tetapi bagaimana dengan direktori? Secara lalai, rm hanya membuang fail dan bukan direktori.

Perintah rmdir ("remove directory") membuang direktori, dengan asumsi bahawa ia kosong. Mari kita mengujinya dengan membuat direktori baru, kosong, menggunakan perintah " mkdir test-directory ".

Mari kita sahkan ia berada di sana dengan arahan " ls -l ".

Sekarang kita boleh mengalih keluar direktori baru kami dengan menggunakan perintah " rmdir test-directory, " dan pastikan ia hilang dengan menjalankan perintah " ls -l " sekali lagi.

Yup, ia hilang.

Walau bagaimanapun, apa yang akan berlaku jika kita cuba " rmdir penguin-pix "?

Kita tidak boleh rmdir direktori itu kerana ia tidak kosong.

Sekiranya anda pasti mahu mengalih keluar penguin-pix dan semua di dalamnya (termasuk semua fail dan sebarang direktori yang mungkin mengandunginya), anda boleh menggunakan perintah rm dengan pilihan -r .

Biasanya, rm tidak akan beroperasi pada direktori. Walau bagaimanapun, jika digunakan dengan pilihan -r, rm akan membuang direktori secara rekursif, yang bermaksud ia bergerak ke dalam direktori dan mana-mana subdirektori, memadam semua termasuk direktori. Jadi, jika kita menjalankan perintah " rm -r penguin-pix, " ia akan menghapus direktori dan fail yang berada di dalamnya. Sekiranya terdapat sebarang direktori di dalamnya, mereka juga akan dipadamkan.

Amaran! Sekali lagi, tidak ada batal untuk arahan ini. Apabila anda rm -r sebuah direktori, direktori dan segala-galanya di dalamnya akan dialih keluar selamanya! Seperti kebanyakan arahan Linux, rm sangat berkuasa dan harus digunakan dengan berhati-hati.

Untuk menyalin fail, gunakan arahan cp .

 cp SOURCE DESTINATION 

SUMBER adalah nama fail yang anda ingin salin, dan DESTINATION ialah nama laluan yang menentukan destinasi fail baru. Destinasi boleh menjadi nama fail baru atau nama direktori tempat anda ingin salinannya berada.

Katakan kita mempunyai fail teks dalam folder dokumen kami yang disebut orig.txt, dan kami ingin membuat salinannya dipanggil copy.txt . Perintah yang perlu kita gunakan ialah " cp orig.txt copy.txt ."

Jika, sebaliknya, kami menentukan direktori sebagai destinasi arahan cp, ia membuat salinan dengan nama yang sama dengan asal dalam direktori destinasi. Dalam contoh seterusnya, kami melakukan enam perkara.

  1. Senaraikan kandungan direktori kerja.
  2. Buat direktori baru, dipanggil salinan .
  3. Senaraikan kandungan direktori kerja, yang kini termasuk direktori salinan .
  4. Senaraikan kandungan direktori salinan (tiada apa-apa. Ia kosong).
  5. Salin copy.txt ke direktori salinan .
  6. Senaraikan kandungan direktori salinan, yang kini mengandungi salinan copy.txt .

Menamakan semula fail

Perintah mv juga boleh digunakan untuk menukar nama fail. Sebagai contoh, arahan " mv orig.txt original.txt " akan menamakan semula fail orig.txt ke original.txt .

Menamakan semula suatu direktori

Menamakan semula direktori berfungsi seperti menukar nama fail, dengan arahan mv . Di sini, kami membuat direktori bernama " salinan, " tetapi menamakan semulanya dengan " salinan " menggunakan arahan " salinan salinan mv ."

Jika direktori salinan mengandungi mana-mana fail atau direktori, ia tidak berubah. Satu-satunya perkara yang akan berubah ialah nama direktori yang mengandunginya.

Penyiapan automatik

Kebanyakan peluru baris perintah secara automatik melengkapkan perkataan yang anda telah mula menaip jika anda menekan kekunci Tab. Penyiapan automatik dapat membantu menjimatkan masa, terutama dengan nama fail panjang. Sebagai contoh, katakan anda mempunyai tiga fail dalam folder dokumen anda: penguin-diving.jpg, penguin.jpg, dan penguins.jpg .

Jika anda menaip perintah dan kemudian taip " p " dan tekan kekunci Tab shell shell melengkapkan perkataan "penguin" untuk anda.

Ia berhenti di sana kerana semua fail bermula dengan kata penguin, tetapi selepas itu ia tidak pasti file mana yang anda ingin tentukan.

Sekiranya anda berada dalam situasi di mana terdapat lebih daripada satu perlawanan autocomplete untuk apa yang telah anda taipkan, tekan Tab dua kali menimbulkan shell untuk menyenaraikan semua kemungkinan yang mungkin. Jadi dalam keadaan di atas di mana anda menaip p dan Tab dan shell autocompletes penguin untuk anda. Tekan Tab dua kali lagi akan memberi anda semua pilihan yang mungkin, dan meletakkan anda kembali pada prompt, dengan perintah anda diisi di mana anda berhenti.

Autocompletion juga berfungsi untuk melengkapkan nama laluan dan nama arahan.

Keluar dari cangkerang

Menaip keluar perintah keluar dari shell perintah, dan sama ada menutup tetingkap terminal, atau menyediakan tetingkap terminal untuk ditutup secara manual.