GNU/Linux >> Belajar Linux >  >> Linux

Terminal, shell, konsol, dan baris perintah

Jika Anda menjelajahi Linux atau Unix, Anda mungkin mendengar istilah terminal, baris perintah, shell, dan konsol, dan Anda mungkin bingung tentang yang mana dan apakah keduanya sama. Mereka pasti semua terkait, tetapi ada nuansa masing-masing yang memiliki implikasi penting. Artikel ini memandu Anda melalui terminologi antarmuka berbasis teks Linux.

Cara kerja komputer

Ketika komputer boot, kernel mengenali perangkat keras fisiknya sendiri dan memungkinkan setiap komponen untuk berbicara satu sama lain. Ada banyak kernel yang berbeda di luar sana:dahulu kala, ada kernel Unix, kernel Sun, kernel BSD, dan kemudian ada kernel Linux, kernel Hurd, kernel Mach, dan kernel NT.

Dan itu tidak semuanya. Ada kernel khusus untuk semua jenis perangkat komputasi. Beberapa sangat sederhana, dan lainnya sangat kompleks, tergantung pada kebutuhan perangkat yang dijalankannya.

Kumpulan instruksi paling dasar untuk komputer membuatnya tetap menyala. Driver perangkat keras, diatur oleh kernel, membuat kipas tetap aktif untuk mencegah panas berlebih, ruang disk dipantau, status RAM dikelola, perangkat baru terdeteksi, dan sebagainya. Komputer yang sangat awal melakukan bahkan kurang dari ini dalam keadaan idle mereka, dan setiap program yang dijalankan oleh komputer awal pada dasarnya adalah satu-satunya tujuan yang ada, setidaknya saat program itu (dalam bentuk kartu punch) sedang dieksekusi. Konsep menjalankan pekerjaan latar belakang, atau dua aplikasi sekaligus, tidak terbayangkan. Jika Anda ingin memproses dua pekerjaan sekaligus, Anda mendapatkan komputer kedua.

Cangkang interaktif

Namun, begitu komputer maju, beberapa ilmuwan menyadari bahwa memprogram komputer untuk satu tujuan setiap kali booting tidak efisien dan, dengan kemajuan teknologi, kurang bertenaga. Jadi mereka mengembangkan sesuatu yang mereka sebut shell.

Ada penjelasan yang berbeda tentang mengapa istilah "shell" dipilih, tetapi penjelasan yang dapat dipercaya dan memuaskan adalah bahwa antarmuka shell mengelilingi kernel seperti halnya sebuah nutshell mengelilingi sebuah nut. Shell adalah bagian yang berinteraksi dengan pengguna, sedangkan permintaan daya komputasi dikelola oleh kernel.

Hal penting untuk dipahami tentang shell adalah bahwa shell menandai era baru untuk komputasi. Shell mengubah komputer dari alat menjadi alat listrik yang dapat mengubah fungsinya sesuai permintaan. Komputer telah menjadi interaktif. Bahkan dalam komputasi modern, shell adalah tingkat interaksi terendah yang dapat Anda miliki dengan komputer Anda. Itu menjadikannya cara paling langsung untuk menginstruksikan komputer tentang apa yang Anda ingin lakukan selanjutnya, jadi mempelajari shell adalah taktik yang tak ternilai bagi pengguna yang kuat.

Shell adalah konsep abstrak bagi banyak orang. Saat memikirkan cangkang, akan sangat membantu jika memikirkan cangkang yang spesifik, dan ada banyak pilihan. Yang paling populer adalah (GNU) Bash, tetapi Zsh dan Fish adalah alternatif Bash yang populer. Tcsh dan Ksh adalah favorit lama yang andal dari UNIX awal, dengan kepatuhan POSIX yang ketat. Ash dan Dash bertujuan agar ringan dan cepat, menjadikannya ideal untuk sistem tersemat dan untuk lingkungan minimal. Microsoft Powershell adalah shell berbasis .NET open source.

Baris perintah

Saat Anda mengakses shell, Anda mendapatkan prompt. Beberapa orang menyebut prompt shell sebagai baris perintah, yang memang deskriptif:prompt menunjukkan baris di mana Anda dapat mengetikkan perintah.

Prompt adalah beberapa simbol untuk memberi tahu Anda bahwa shell sedang menunggu instruksi Anda. Simbol yang umum adalah tanda dolar ($ ), tetapi bisa juga berupa tanda persen (% ), kurung sudut (> ), sebuah octothorpe (# ), atau sesuatu yang lain sama sekali. Artinya saat Anda menggunakan shell, tampilan default Anda akan terlihat seperti ini:


$

Perbedaan mencolok antara shell adalah sintaks. Misalnya, di Bash dan Zsh serta Ash dan Ksh, Anda menetapkan variabel dengan deklarasi "sama dengan":

$ foo=bar
$ echo $foo
bar

Namun, di Tcsh, Anda menggunakan kata kunci set untuk variabel:

$ set foo=bar
$ echo $foo
bar

Bantuan

Di permukaan, antarmuka shell tidak sepenuhnya ramah pengguna. Sebaliknya, tampaknya Anda diharapkan tahu apa yang harus dilakukan dengan shell. Ini bukanlah hal yang biasa dilakukan oleh sebagian besar ahli komputer modern, karena aplikasi grafis setidaknya menyediakan tombol dan menu untuk dijelajahi oleh pengguna, meskipun mereka tidak tahu persis apa fungsi aplikasi tersebut.

Bahkan jika pengguna memahami bahwa shell sedang menunggu input, kata-kata umum, bahasa Inggris atau lainnya, menghasilkan error atau output yang tidak membantu.

Misalnya, jika Anda mengetik help pada prompt Bash, Anda mendapatkan daftar perintah bawaan, beberapa di antaranya menghasilkan hasil yang berguna atau memungkinkan interaksi lebih lanjut.

Dalam hal ini, shell bukanlah aplikasi khas Anda. Ini benar-benar sebagian besar adalah baris perintah:baris bagi Anda untuk mengetikkan perintah. Terserah pengguna untuk mengetahui perintah apa yang tersedia, dan diasumsikan bahwa pengguna yang membuka shell telah terbiasa dengan setidaknya perintah yang paling dasar sehingga mereka dapat mempelajari lebih lanjut tentang sistem.

Karena tidak selalu demikian, ini berguna pada sistem publik untuk secara global alias sebagian besar perintah yang tidak berguna help ke sesuatu yang informatif, seperti shellp.

Konsol

Anda dapat mengakses shell di Linux atau BSD dengan tidak menjalankan GUI sama sekali (jadi hanya shell yang tersisa), atau dengan menekan Alt+Shift dan tombol fungsi 2 hingga 6. Setiap tombol fungsi membawa Anda ke layar yang disediakan oleh getty (atau agetty, atau yang serupa, tergantung pada apa yang digunakan distribusi Anda). Layar menyediakan prompt login ke shell, dan layar ini sering disebut sebagai konsol. Lebih tepatnya, ini adalah sesi getty atau perangkat tty yang ditiru.

Di Mac, tidak ada cara untuk memilih keluar dari menjalankan GUI pada sistem yang sedang berjalan, meskipun pada saat boot, Anda dapat menggunakan snag keys untuk boot ke mode Single User. Mode Pengguna Tunggal di Mac OS menonaktifkan banyak fitur, termasuk manajemen pengguna, jadi biasanya tidak disarankan.

Cara paling umum untuk mengakses shell di komputer modern adalah dengan membuka emulator terminal, yang menjalankan shell di dalamnya.

Terminal

Terminal secara historis merupakan perangkat fisik, sebelum konsep komputer pribadi (PC) bahkan ada. Terminal adalah objek seperti komputer, tetapi sebenarnya hanya layar (atau terkadang hanya printer!) dengan keyboard terpasang. Jendela terminal pada komputer modern adalah emulasi dari objek historis tersebut, dan Anda biasanya dapat menjalankan shell apa pun di dalam emulator terminal.

Misalnya, pada desktop Linux, Anda dapat menjalankan satu instance Terminal GNOME untuk berfungsi sebagai jendela ke shell Bash, dan instance Terminal GNOME lain untuk berfungsi sebagai jendela ke shell Tcsh.

Terminal itu sendiri hanya ada untuk menampung shell yang sedang berjalan. Emulator terminal tidak memproses data atau menjalankan perintah, meskipun mungkin menambahkan fitur antarmuka pengguna, seperti pintasan keyboard khusus, kemampuan untuk menarik dan melepas file ke dalam shell, tema warna, dan sebagainya.

Ada banyak emulator terminal yang tersedia di semua platform. Desktop Linux dan BSD dikirimkan dengan xterm sebagai fallback, dan biasanya menyertakan emulator modern untuk penggunaan sehari-hari (seperti Terminal GNOME, Konsole, dan sebagainya). Mac OS dikirimkan dengan emulator terminal berpemilik, tetapi iTerm2 adalah pengganti yang jauh lebih unggul (dan lisensinya adalah GPLv2).

Untuk Windows, PowerShell adalah default, tetapi ada banyak opsi open source lainnya seperti ConEmu dan Cmder.

Pelajari lebih lanjut

Anda dapat mempelajari lebih lanjut tentang terminal dan shell yang dijalankannya dengan membaca tentang cara bernavigasi di shell, cara mengelola file di shell, dan cara menyesuaikan shell. Jika Anda belajar lebih baik dengan melakukan , lalu pertimbangkan untuk mengikuti kursus pengantar dari Pelatihan Red Hat.

[ Butuh bantuan untuk mencari tahu apa mengetik di terminal? Unduh Lembar Cheat Perintah Linux. ]


Linux
  1. Cara Mengidentifikasi Direktori Kerja Menggunakan Karakter dan Variabel Shell

  2. Bagaimana cara Menghapus baris 'n' Pertama/Terakhir dari output perintah di Shell?

  3. Apa perbedaan antara &> dan >&di bash?

  1. Perbedaan Antara Perintah Bawaan Dan Yang Tidak?

  2. Shell mana yang tidak mendukung ekspansi tanda kurung dolar, dan meminta backtick?

  3. 5 Cara Mengeksekusi Perintah UNIX / Linux (dan Skrip Shell) di Latar Belakang

  1. Mengkonfigurasi Yaboot Dan Debian Untuk Boot Ke Shell Login Baris Perintah?

  2. Cara Menghitung Jumlah Baris dalam File di Linux (Contoh Perintah wc dan nl)

  3. Contoh membuat alias perintah di shell yang berbeda