Shell Linux dan bantuan terminal dan contoh-contohnya

Shell baris perintah adalah antarmuka pengguna berbasis teks untuk sistem operasi Anda. Tidak seperti shell GUI, yang menggunakan representasi grafis dari layanan dan sumber daya sistem, shell baris perintah hanya menggunakan teks. Ini adalah antarmuka mendasar antara Anda dan sistem operasi, dan dalam banyak kasus menawarkan Anda lebih banyak kontrol langsung terhadap proses sistem.

Untuk apa Shell digunakan?

Ketika berkomunikasi dengan sistem operasi Anda, apa pun yang dapat Anda lakukan dengan GUI dapat dilakukan di baris perintah. Sebagai contoh, mari kita ambil sesuatu yang perlu Anda lakukan sepanjang waktu: pindahkan file di dalam sistem file Anda. Menggunakan GUI, Anda dapat memilih ikon yang mewakili file Anda, seret ke folder lain, dan letakkan di sana untuk memindahkannya.

Namun, menggunakan baris perintah, operasi ini dapat dilakukan dengan menggunakan satu perintah:

Baris perintah, setelah Anda terbiasa, memungkinkan Anda untuk mengontrol sistem Anda dengan efisiensi dan presisi yang lebih besar daripada dengan GUI.

Mengapa itu disebut "Shell"?

Antarmuka pengguna disebut sebagai "shell" karena itu adalah lapisan luar yang memisahkan Anda dari bagian terdalam sistem operasi, yang disebut kernel. Secara teknis, GUI sistem operasi Anda juga merupakan "shell, " tetapi baris perintah sering disebut dengan santai sebagai "shell."

Bagaimana cara saya masuk ke Shell Command-Line?

Cara paling umum untuk mengakses shell command-line adalah menggunakan emulator terminal.

Jika Anda menggunakan distribusi Linux, itu bisa boot ke Sistem X Window (atau "X"), yang memungkinkan Anda untuk menjalankan program di windows mereka sendiri dan berinteraksi dengan mereka menggunakan mouse. Di X, ada berbagai cara untuk meluncurkan emulator terminal, tetapi berikut ini adalah yang paling umum:

  • Banyak distribusi Linux menggunakan lingkungan desktop yang mirip dengan Microsoft Windows, yang memiliki "Start Menu." Dari menu ini, aplikasi terminal Anda biasanya terletak di bawah "Aksesoris." Sebagai contoh, Lubuntu dilengkapi dengan emulator terminal LXTerminal yang sudah diinstal, dan pintasannya terletak di menu Accessories.

    Memilih item menu terminal meluncurkan emulator terminal dan menempatkan Anda pada baris perintah.

  • Versi Linux yang berbeda menggunakan berbagai jenis window manager, masing-masing dengan antarmuka yang sedikit berbeda. Dengan banyak pengelola jendela, mengklik kanan pada desktop menunjukkan menu yang berisi opsi terminal. Misalnya, menu klik kanan di Crunchbang Linux memiliki opsi "Terminal". Di bawah ini adalah tampilan menu itu, setelah mengklik kanan di mana saja di desktop.

    Di sini, menu Aksesori juga memiliki opsi untuk menjalankan terminal.

  • Pada banyak versi Linux, menekan Super Key dan " T " secara bersamaan adalah hotkey default untuk meluncurkan terminal. (Kunci Super biasanya merupakan kunci pertama di sebelah kiri bilah spasi, juga dikenal sebagai tombol Windows).

Jika Anda tidak tahu cara meluncurkan emulator terminal Anda, lihat dokumentasi untuk sistem operasi khusus Anda, dan cari "terminal".

Prompt Perintah

Ketika Anda meluncurkan terminal emulator, Anda akan diberikan command prompt.

Catatan: Semua contoh ini dilakukan dengan menggunakan Bourne-Again Shell ( bash ), yang merupakan shell baris perintah default di Linux.

Mari kita perhatikan perintah ini dengan cermat. Prompt dapat dikonfigurasikan menjadi apa pun yang Anda suka, tetapi secara default, tampilannya seperti yang kami lihat di sini, memberikan kami informasi yang berguna sebelum kami mengetikkan perintah.

Secara khusus, ini memberitahu kita siapa kita (nama pengguna) dan di mana kita (sistem apa yang kita gunakan dan direktori kerja kita). Berikut adalah arti masing-masing bagian dari prompt:

namamuNama pengguna Anda.
@Simbol at at memisahkan nama pengguna dan nama host.
hosting kamuNama host sistem.
:Tanda titik dua adalah karakter yang memisahkan nama host dan direktori kerja.
~Direktori kami saat ini ("berfungsi"). Tilde (" ~ ") adalah karakter khusus yang mewakili direktori home kami. Ketika Anda memulai sesi shell, ini adalah direktori di mana Anda biasanya mulai bekerja secara default.
$Karakter khusus yang menunjukkan bahwa kami tidak memiliki hak pengguna super. Jika masuk sebagai root (superuser), karakter ini berubah menjadi # .

Memasukkan perintah

Mari kita ketik perintah pertama kita. Kita harus mulai dengan membuat daftar file di direktori home kami. Cara paling dasar untuk melihat semua file ini adalah dengan menggunakan perintah ls ; ketik ls pada prompt perintah dan tekan enter.

Seperti yang ditunjukkan di atas, perintah ls mencantumkan isi direktori dan menempatkan kami di prompt perintah lain.

Catatan: Semua perintah dan nama file di Unix dan Linux peka huruf besar-kecil. Perintah ls, misalnya, harus diketik dalam huruf kecil, sama seperti di atas.

Untuk daftar yang lebih rinci dari isi direktori, kita dapat menentukan opsi baris perintah, juga dikenal sebagai sakelar . Ini adalah argumen tambahan untuk perintah yang mengubah cara operasinya. Di sini, kita akan menggunakan opsi -l (gunakan format daftar panjang) untuk mendapatkan informasi lebih lanjut dari daftar kami.

Seperti yang ditunjukkan di atas, perintah ls-l memberi kita lebih banyak informasi tentang isi direktori home kami. Saat ini, informasi terpenting yang harus kita perhatikan adalah bahwa huruf pertama dari daftar adalah d, yang berarti bahwa masing-masing isi direktori itu sendiri adalah direktori.

Sebelum kita melakukan hal lain, mari kita membersihkan layar, untuk menghapus kekacauan yang dihasilkan oleh output dari perintah kita sebelumnya. Gunakan perintah hapus dengan mengetikkan hapus di prompt perintah baru dan tekan Enter .

Setelah menekan Enter, layar menghapus dan menempatkan Anda pada prompt perintah baru di bagian atas layar terminal Anda.

Mengubah direktori

Mari kita pindah ke folder dokumen kita menggunakan perintah cd ("ubah direktori"). Untuk mengubah direktori saat ini, ketik " cd " dan kemudian spasi, lalu nama direktori yang ingin Anda ubah lalu tekan enter.

Perintah cd mengasumsikan bahwa nama direktori yang Anda tentukan relatif terhadap direktori Anda saat ini. Oleh karena itu, untuk mengubah ke direktori dokumen, yang ada di direktori kami saat ini, ketik " dokumen cd ".

Prompt perintah sekarang mencerminkan direktori kerja baru: ~ / dokumen, yang setara dengan pathname lengkap: / home / yourname / dokumen . Apa pun pengguna yang Anda masuki, " ~ " selalu mewakili direktori home Anda. Dalam contoh, direktori kerja baru juga terlihat di bilah judul jendela terminal kami.

Catatan: Tidak seperti MS-DOS dan Microsoft Windows, nama direktori hierarkis di Linux dipisahkan oleh garis miring (" / ") daripada garis miring terbalik (" \ "). Perubahan simbol ini adalah perbedaan mendasar antara berbagai sistem operasi ini.

Kapan saja, Anda dapat memverifikasi direktori Anda saat ini dengan menggunakan perintah pwd ("print working directory").

Perintah mencetak nama direktori saat ini ke terminal, dalam hal ini " / home / yourname / dokumen ". Sekali lagi, dengan " ~ / dokumen " the " ~ " mewakili direktori home kami, yaitu / home / yourname . Jadi jika kita berada di direktori home kita, mengetik " dokumen cd, " " cd / home / namamu / dokumen, " atau " cd ~ / dokumen " semua akan menempatkan kita di direktori yang sama.

Sekarang mari kita naik satu direktori, kembali ke direktori home kami. Nama direktori khusus " .. " (titik ganda) berarti "satu direktori ke atas".

Kami sekarang kembali ke direktori home kami.

Catatan: Jika Anda lebih terbiasa dengan MS-DOS, perlu diingat bahwa harus ada ruang antara cd dan dua periode.

Memindahkan file

Sekarang mari kita terbiasa dengan cara memindahkan file.

Katakanlah kita baru saja mengunduh dua gambar dengan browser web, dan mereka menyimpannya di folder unduhan kita. Mari kita masuk ke sana dan melihatnya. Pertama, kami mengubah direktori menjadi direktori unduhan .

Kemudian daftar file dalam direktori dengan perintah ls .

Di sini kita melihat dua file JPEG. Mari kita keluarkan mereka dari folder unduhan, dan letakkan di tempat yang lebih sesuai, seperti folder gambar. Untuk memindahkan file-file ini, kami akan menggunakan perintah mv ("pindah").

Perintah mv mengambil bentuk umum berikut.

 mv [ PILIHAN ...] TUJUAN SUMBER 

OPSI terlampir dalam tanda kurung karena Anda tidak diharuskan menentukan opsi apa pun untuk menyelesaikan perintah. Argumen SUMBER dan DESTINASI keduanya diperlukan.

SOURCE adalah nama file atau file yang ingin Anda pindahkan. TUJUAN adalah tempat Anda ingin memindahkannya. Jika DESTINATION adalah nama direktori, file atau file dipindahkan ke direktori itu.

Kami saat ini berada di direktori / home / yourname / unduhan dan kami ingin memindahkan file ke / home / yourname / gambar . Kami dapat menentukan TUJUAN kami menggunakan pathname lengkap (" / home / yourname / images "), atau sebagai pathname relatif terhadap direktori kami saat ini (" ../images "), atau menggunakan tilde sebagai singkatan untuk direktori home kami ( " ~ / gambar "). Semua ini setara dan memberikan hasil yang sama. Mari kita gunakan pathname relatif untuk DESTINASI kami: ../images .

Jadi, bagaimana kita menentukan SUMBER kita?

Kami ingin memindahkan kedua file, dan mereka adalah satu-satunya file dalam direktori. Jadi, cara paling sederhana untuk menentukannya adalah dengan memberitahu saya "pindahkan semua file dalam direktori ini ke ../images ." Kita bisa melakukan ini menggunakan wildcard.

Wildcard adalah karakter khusus yang dapat mewakili lebih dari satu nama file (atau lebih dari satu bagian dari nama file). Di sini, kita akan menggunakan wildcard asterisk (" * "). Jika kita menggunakan * sebagai seluruh nama file kita, shell menerapkan perintah kita untuk setiap file di direktori kerja kita.

Jadi, perintah kami akan berbunyi sebagai berikut: " mv * ../images ". Ayo masuk sekarang.

Sepertinya tidak ada yang terjadi, tetapi itu adalah cara shell untuk memberitahu kami tidak ada kesalahan terjadi. Jika ada masalah, itu akan menampilkan pesan kesalahan atau semacam peringatan.

Mari kita verifikasi bahwa file telah dipindahkan. Kita dapat membuat daftar isi direktori lain dengan menjalankan ls dan menentukan pathname. Dalam hal ini, nama path kami adalah " ../images ."

Gambar keduanya ada di sana, bersama dengan direktori lain yang sudah ada (" wallpaper "). Kita harus membuat direktori baru kita sendiri, untuk mengatur gambar kita dengan lebih baik dan menjaga agar direktori gambar utama tidak berantakan. Ayo lakukan sekarang.

Membuat direktori

Mari kita ubah ke direktori gambar di mana dua gambar penguin kita sekarang berada.

Sekarang mari kita membuat direktori baru untuk gambar penguin kita. Membuat direktori baru dilakukan dengan perintah mkdir .

Bentuk paling sederhana dari perintah mkdir adalah memberikan satu argumen: nama direktori baru. Kami ingin membuat direktori baru di dalam direktori kami saat ini, jadi kami tidak harus memberikan mkdir nama path lengkap, hanya nama direktori itu sendiri. Mari kita sebut penguin-pix direktori baru kami.

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

Sekarang mari kita verifikasi ada di sana, dengan daftar isi direktori.

Catatan: Anda dapat melihat bahwa ketika kami mencantumkan konten direktori, nama file dan nama direktori berbeda warna untuk membantu mengidentifikasi berbagai file dan direktori. Meskipun penyorotan warna adalah umum pada kebanyakan shell, tidak semua shell melakukan hal ini secara default.

Jika kita tidak tahu dari warna nama, kita selalu bisa memeriksa mana dari file-file ini direktori dengan memanggil ls dengan opsi -l (daftar panjang).

Informasi tambahan mencakup yang berikut ini.

  • Izin - siapa yang memiliki akses ke file dan jenis akses apa.
  • Kepemilikan - siapa pemilik file.
  • Karangan - siapa yang membuat file.
  • Ukuran file - ukuran file dalam byte.
  • mtime - tanggal dan waktu file terakhir diubah.

Huruf pertama pada baris untuk penguin-pix dan wallpaper adalah " d, " yang menunjukkan bahwa itu adalah direktori. Untuk informasi lebih lanjut tentang daftar file, lihat dokumentasi perintah chmod .

Kami sekarang dapat memindahkan gambar kami ke direktori baru. Untuk memberi tahu saya file apa yang akan dipindahkan, kita dapat menggunakan wildcard lagi, tapi kali ini mari kita pastikan ia tahu hanya memindahkan file gambar, bukan direktori. Karena kedua file gambar diakhiri dengan ekstensi JPEG .jpg, kita dapat menentukan nama file " * .jpg ": ini memberitahu shell "file yang ingin saya pindahkan adalah file dalam direktori saat ini yang diakhiri dengan .jpg ". Jadi perintah kita akan terlihat seperti ini: " mv * .jpg penguin-pix ."

Tidak ada pesan kesalahan yang diberikan, artinya perintah berhasil diselesaikan. Mari kita verifikasi file sudah dipindahkan dengan daftar isi penguin-pix .

Menghapus file

Kami memiliki dua gambar penguin, tetapi mungkin kami memutuskan bahwa kami hanya perlu penguin -nyata.jpg, dan kami tidak perlu lagi tux-penguin.jpg . Kami dapat menghapus file ini dengan menggunakan perintah rm ("remove").

Kami perlu memberikan nama file kepada rm untuk dihapus. Kami saat ini berada di direktori gambar, tetapi gambar kami sekarang berada di subdirektori penguin-pix . Kita bisa mengubah direktori kerja kita menjadi penguin-pix dan kemudian menjalankan perintah, tetapi itu hanya kerja ekstra, kita bisa melewati langkah itu dengan menggunakan direktori sebagai bagian dari path.

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

Sekali lagi, shell mengeksekusi perintah kami tanpa memberikan umpan balik. Perintah dieksekusi dengan sukses, jadi shell mengembalikan kita ke command prompt, memberi tahu kami bahwa itu siap untuk perintah lain.

Peringatan: Tidak seperti menyeret file ke tempat sampah atau tempat daur ulang Microsoft Windows, tidak ada cara untuk membatalkan penghapusan file dengan rm . Hapus file Anda dengan hati-hati! Setelah pergi, mustahil untuk mendapatkannya kembali.

Mari kita verifikasi bahwa file tersebut benar-benar hilang.

Menghapus direktori

Itu bagus untuk file, tetapi bagaimana dengan direktori? Secara default, rm hanya menghapus file dan bukan direktori.

Perintah rmdir ("hapus direktori") menghapus direktori, dengan anggapan bahwa itu kosong. Mari kita mengujinya dengan membuat direktori kosong baru, menggunakan perintah " mkdir test-directory ".

Mari kita verifikasi apakah ada di sana dengan perintah " ls-l ".

Kita sekarang dapat menghapus direktori baru kita menggunakan perintah " rmdir test-direktori, " dan memeriksa apakah sudah hilang dengan menjalankan perintah " ls-l " lagi.

Ya, itu hilang.

Namun, apa yang akan terjadi jika kami mencoba " rmdir penguin-pix "?

Kami tidak dapat rmdir direktori itu karena tidak kosong.

Jika Anda yakin ingin menghapus penguin-pix dan semua yang ada di dalamnya (termasuk semua file dan direktori yang ada di dalamnya), Anda dapat menggunakan perintah rm dengan opsi -r .

Biasanya, rm tidak akan beroperasi pada direktori. Namun, jika dijalankan dengan opsi -r, rm menghapus direktori secara rekursif, yang berarti ia berpindah ke direktori dan subdirektori apa pun, menghapus semuanya termasuk direktori. Jadi, jika kita menjalankan perintah " rm -r penguin-pix, " itu menghapus direktori dan file yang ada di dalamnya. Jika ada direktori di dalamnya, mereka juga akan dihapus.

Peringatan! Sekali lagi, tidak ada undo untuk perintah ini. Ketika Anda rm -r direktori, direktori itu dan semua yang ada di dalamnya dihapus selamanya! Seperti kebanyakan perintah Linux, rm sangat kuat dan harus digunakan dengan hati-hati.

Untuk menyalin file, gunakan perintah cp .

 TUJUAN SUMBER 

SOURCE adalah nama file yang ingin Anda salin, dan DESTINATION adalah pathname yang menentukan tujuan file baru. Tujuan dapat berupa nama file baru atau nama direktori tempat Anda ingin salinannya berada.

Katakanlah kita memiliki file teks di folder dokumen kita yang bernama orig.txt, dan kami ingin membuat salinannya bernama copy.txt . Perintah yang harus kita gunakan adalah " cp orig.txt copy.txt ."

Sebaliknya, jika kita menentukan direktori sebagai tujuan dari perintah cp, itu membuat salinan dengan nama yang sama dengan aslinya di direktori tujuan. Dalam contoh berikut, kami melakukan enam hal.

  1. Daftar isi direktori kerja.
  2. Buat direktori baru, yang disebut salinan .
  3. Daftar isi direktori kerja, yang sekarang termasuk direktori salinan .
  4. Daftar isi direktori salinan (tidak ada. Ini kosong).
  5. Salin copy.txt ke direktori salinan .
  6. Daftar isi direktori salinan, yang sekarang berisi salinan copy.txt .

Mengganti nama file

Perintah mv juga dapat digunakan untuk mengubah nama file. Sebagai contoh, perintah " mv orig.txt original.txt " akan mengubah nama file orig.txt menjadi original.txt .

Mengganti nama direktori

Mengganti nama direktori berfungsi persis seperti mengganti nama file, dengan perintah mv . Di sini, kita membuat direktori bernama " copy, " tetapi ganti namanya menjadi " copy " menggunakan perintah " mv copy copy ."

Jika direktori salin berisi file atau direktori, itu tidak akan berubah. Satu-satunya hal yang akan berubah adalah nama direktori yang berisi mereka.

Penyelesaian otomatis

Sebagian besar cangkang baris perintah Linux secara otomatis menyelesaikan kata yang sudah Anda ketik, jika Anda menekan tombol Tab. Penyelesaian otomatis dapat membantu menghemat waktu Anda, terutama dengan nama file yang panjang. Sebagai contoh, katakanlah Anda memiliki tiga file di folder dokumen Anda: penguin-diving.jpg, penguin.jpg, dan penguins.jpg .

Jika Anda mengetik perintah dan kemudian mengetik " p " dan tekan tombol Tab shell melengkapi kata "penguin" untuk Anda.

Itu berhenti di sana karena semua file mulai dengan kata penguin, tetapi setelah itu tidak yakin file mana yang ingin Anda tentukan.

Jika Anda berada dalam situasi di mana terdapat lebih dari satu pencocokan pelengkapan otomatis untuk apa yang telah Anda ketikkan, menekan Tab dua kali meminta shell untuk mendaftar semua pencocokan yang mungkin. Jadi dalam situasi di atas di mana Anda mengetik p dan Tab dan shell penguin pelengkap otomatis untuk Anda. Tekan Tab dua kali lagi akan memberi Anda semua opsi yang mungkin, dan menempatkan Anda kembali pada prompt, dengan perintah Anda diisi di mana Anda tinggalkan.

Pelengkapan otomatis juga berfungsi untuk melengkapi nama jalur dan nama perintah.

Keluar dari shell

Mengetik perintah keluar dari shell perintah, dan tutup jendela terminal, atau siapkan jendela terminal untuk ditutup secara manual.