Apa Perbedaan Antara Bash, Zsh, dan Kerang Linux Lainnya?

Daftar Isi:

Apa Perbedaan Antara Bash, Zsh, dan Kerang Linux Lainnya?
Apa Perbedaan Antara Bash, Zsh, dan Kerang Linux Lainnya?

Video: Apa Perbedaan Antara Bash, Zsh, dan Kerang Linux Lainnya?

Video: Apa Perbedaan Antara Bash, Zsh, dan Kerang Linux Lainnya?
Video: Smartwatch Series 8 i8 Full Screen (ANTI AIR + ADA 10 GAME ), Cek pin komentar ✨ - YouTube 2024, April
Anonim
Kebanyakan distribusi Linux menyertakan bash shell secara default, tetapi Anda juga dapat beralih ke lingkungan shell yang lain. Zsh adalah alternatif yang sangat populer, dan ada cangkang lainnya, seperti abu, dasbor, ikan, dan tcsh. Tetapi apa bedanya, dan mengapa ada begitu banyak?
Kebanyakan distribusi Linux menyertakan bash shell secara default, tetapi Anda juga dapat beralih ke lingkungan shell yang lain. Zsh adalah alternatif yang sangat populer, dan ada cangkang lainnya, seperti abu, dasbor, ikan, dan tcsh. Tetapi apa bedanya, dan mengapa ada begitu banyak?

Apa yang Dilakukan Kerang?

Ketika Anda masuk di baris perintah atau meluncurkan jendela terminal di Linux, sistem akan meluncurkan program shell. Kerang menawarkan cara standar memperluas lingkungan baris perintah. Anda dapat menukar shell default untuk yang lain, jika Anda suka.

Lingkungan shell pertama adalah Shell Thompson, dikembangkan di Bell Labs dan dirilis pada tahun 1971. Lingkungan shell telah membangun konsep sejak itu, menambahkan berbagai fitur baru, fungsionalitas, dan peningkatan kecepatan.

Misalnya, Bash menawarkan penyelesaian perintah dan file, fitur scripting lanjutan, riwayat perintah, warna yang dapat dikonfigurasi, alias perintah, dan berbagai fitur lain yang tidak tersedia pada tahun 1971 ketika shell pertama dirilis.

Shell juga digunakan di latar belakang oleh berbagai layanan sistem. Distribusi Linux mencakup banyak fungsi yang ditulis sebagai skrip shell. Skrip ini adalah perintah dan fungsi scripting shell lanjutan lainnya yang dijalankan melalui lingkungan shell.

Kerang Memimpin ke Bash: sh, csh, tsh, dan ksh

Progenitor paling menonjol dari cangkang modern adalah cangkang Bourne - juga dikenal sebagai "sh" -yang diberi nama setelah penciptanya Stephen Bourne yang bekerja di AT & T's Bell Labs. Dirilis pada tahun 1979, ia menjadi juru bahasa-perintah standar di Unix karena dukungannya untuk substitusi perintah, pemipaan, variabel, pengujian kondisi, dan perulangan, bersama dengan fitur-fitur lainnya. Itu tidak menawarkan banyak penyesuaian untuk pengguna, dan tidak mendukung kebaikan modern seperti alias, penyelesaian perintah, dan fungsi shell (meskipun yang terakhir ini akhirnya ditambahkan).

C shell, atau "csh", dikembangkan pada akhir 1970-an oleh Bill Joy di University of California, Berkley. Ini menambahkan banyak elemen interaktif dengan mana pengguna dapat mengontrol sistem mereka, seperti alias (pintas untuk perintah panjang), kemampuan manajemen pekerjaan, sejarah perintah, dan banyak lagi. Itu dimodelkan dari bahasa pemrograman C, yang sistem operasi Unix sendiri ditulis. Ini juga berarti bahwa pengguna Bourne shell harus belajar C sehingga mereka bisa memasukkan perintah di dalamnya. Selain itu, csh memiliki beberapa bug yang harus disingkirkan oleh pengguna dan pembuat konten selama periode waktu yang besar. Orang-orang akhirnya menggunakan Bourne shell untuk skrip karena menangani perintah non-interaktif yang lebih baik, tetapi tetap menggunakan shell C untuk penggunaan normal.

Seiring waktu, banyak orang memperbaiki bug dan menambahkan fitur ke shell C, memuncak dalam versi perbaikan dari csh yang dikenal sebagai "tcsh". Tapi csh masih default di komputer berbasis Unix, dan telah menambahkan beberapa fitur non-standar. David Korn dari Bell Labs mengerjakan KornShell, atau “ksh”, yang mencoba memperbaiki situasi dengan menjadi kompatibel dengan bahasa Bourne shell tetapi menambahkan banyak fitur dari csh shell. Itu dirilis pada tahun 1983, tetapi di bawah lisensi kepemilikan. Ini bukan perangkat lunak bebas sampai tahun 2000-an, ketika dirilis di bawah berbagai lisensi open-source.
Seiring waktu, banyak orang memperbaiki bug dan menambahkan fitur ke shell C, memuncak dalam versi perbaikan dari csh yang dikenal sebagai "tcsh". Tapi csh masih default di komputer berbasis Unix, dan telah menambahkan beberapa fitur non-standar. David Korn dari Bell Labs mengerjakan KornShell, atau “ksh”, yang mencoba memperbaiki situasi dengan menjadi kompatibel dengan bahasa Bourne shell tetapi menambahkan banyak fitur dari csh shell. Itu dirilis pada tahun 1983, tetapi di bawah lisensi kepemilikan. Ini bukan perangkat lunak bebas sampai tahun 2000-an, ketika dirilis di bawah berbagai lisensi open-source.

Kelahiran bash

Antarmuka Sistem Operasi Portabel untuk Unix, atau POSIX, merupakan respons lain terhadap penerapan csh milik yang sibuk. Ini berhasil menciptakan standar untuk interpretasi perintah (antara lain) dan akhirnya mencerminkan banyak fitur di KornShell. Pada saat yang sama, Proyek GNU berusaha menciptakan sistem operasi bebas Unix yang kompatibel. Proyek GNU mengembangkan shell perangkat lunak bebas untuk menjadi bagian dari sistem operasi bebasnya dan menamakannya "Bourne Again Shell", atau "bash".
Antarmuka Sistem Operasi Portabel untuk Unix, atau POSIX, merupakan respons lain terhadap penerapan csh milik yang sibuk. Ini berhasil menciptakan standar untuk interpretasi perintah (antara lain) dan akhirnya mencerminkan banyak fitur di KornShell. Pada saat yang sama, Proyek GNU berusaha menciptakan sistem operasi bebas Unix yang kompatibel. Proyek GNU mengembangkan shell perangkat lunak bebas untuk menjadi bagian dari sistem operasi bebasnya dan menamakannya "Bourne Again Shell", atau "bash".

Bash telah diperbaiki dalam beberapa dekade sejak rilis pertama pada tahun 1989, tetapi itu masih menjadi shell default pada kebanyakan distribusi Linux saat ini. Ini juga merupakan cangkang default di macOS Apple, dan tersedia untuk dipasang di Microsoft Windows 10.

Kerang Baru: abu, dasbor, zh, dan ikan

Meskipun komunitas Linux telah menetapkan Bash di tahun-tahun berikutnya, pengembang tidak berhenti menciptakan cangkang baru ketika Bash pertama kali dirilis 28 tahun yang lalu.

Kenneth Almquist menciptakan clone shell Bourne yang dikenal sebagai Almquish shell, A Shell, "ash", atau kadang-kadang hanya "sh". itu juga POSIX kompatibel dan menjadi shell default di BSD, cabang berbeda dari Unix. Shell abu lebih ringan daripada bash, yang membuatnya populer di sistem Linux tertanam. Jika Anda memiliki ponsel Android yang di-root dengan BusyBox yang diinstal - atau perangkat lain dengan perangkat lunak rangkaian BusyBox - itu menggunakan kode dari abu.

Debian mengembangkan lingkungan shell berdasarkan abu dan menyebutnya "dash". Ini dirancang agar POSIX-compliant dan ringan, jadi lebih cepat daripada Bash, tetapi tidak akan memiliki semua fitur-fiturnya. Ubuntu menggunakan shell dasbor sebagai shell default untuk tugas-tugas non-interaktif, mempercepat skrip shell dan tugas lain yang berjalan di latar belakang.Ubuntu masih menggunakan bash untuk shell interaktif, namun, sehingga pengguna masih memiliki lingkungan interaktif berfitur lengkap.
Debian mengembangkan lingkungan shell berdasarkan abu dan menyebutnya "dash". Ini dirancang agar POSIX-compliant dan ringan, jadi lebih cepat daripada Bash, tetapi tidak akan memiliki semua fitur-fiturnya. Ubuntu menggunakan shell dasbor sebagai shell default untuk tugas-tugas non-interaktif, mempercepat skrip shell dan tugas lain yang berjalan di latar belakang.Ubuntu masih menggunakan bash untuk shell interaktif, namun, sehingga pengguna masih memiliki lingkungan interaktif berfitur lengkap.
Salah satu cangkang baru yang paling populer adalah Z shell, atau "zsh". Dibuat oleh Paul Falstad pada tahun 1990, zsh adalah cangkang ala Bourne yang berisi fitur yang akan Anda temukan di bash, plus bahkan lebih banyak lagi. Sebagai contoh, zsh memiliki pemeriksaan ejaan, kemampuan untuk melihat login / logout, beberapa fitur pemrograman built-in seperti bytecode, dukungan untuk notasi ilmiah dalam sintaks, memungkinkan untuk aritmatika floating-point, dan lebih banyak fitur.
Salah satu cangkang baru yang paling populer adalah Z shell, atau "zsh". Dibuat oleh Paul Falstad pada tahun 1990, zsh adalah cangkang ala Bourne yang berisi fitur yang akan Anda temukan di bash, plus bahkan lebih banyak lagi. Sebagai contoh, zsh memiliki pemeriksaan ejaan, kemampuan untuk melihat login / logout, beberapa fitur pemrograman built-in seperti bytecode, dukungan untuk notasi ilmiah dalam sintaks, memungkinkan untuk aritmatika floating-point, dan lebih banyak fitur.
Shell lain yang lebih baru adalah Friendly Interactive Shell, atau "fish", dirilis pada tahun 2005. Ini memiliki sintaks baris perintah yang unik yang dirancang agar sedikit lebih mudah dipelajari, tetapi tidak berasal dari Bourne shell atau C shell. Ini ide yang menarik, tetapi apa yang Anda pelajari melalui penggunaan ikan tidak akan membantu Anda menggunakan bash dan cangkang lain yang berasal Bourne.
Shell lain yang lebih baru adalah Friendly Interactive Shell, atau "fish", dirilis pada tahun 2005. Ini memiliki sintaks baris perintah yang unik yang dirancang agar sedikit lebih mudah dipelajari, tetapi tidak berasal dari Bourne shell atau C shell. Ini ide yang menarik, tetapi apa yang Anda pelajari melalui penggunaan ikan tidak akan membantu Anda menggunakan bash dan cangkang lain yang berasal Bourne.

Yang Harus Anda Pilih? (dan Mengapa Zsh Populer)

Anda tidak perlu memilih cangkang. Sistem operasi Anda memilih shell default untuk Anda, dan pilihan itu hampir selalu bash. Duduklah di depan distribusi Linux - atau bahkan Mac - dan Anda hampir selalu memiliki lingkungan shell bash. Bash memiliki beberapa fitur lanjutan, tetapi Anda mungkin tidak akan menggunakannya kecuali Anda memprogram skrip shell.

Pada sistem Linux tertanam atau sistem BSD, Anda akan berakhir dengan kulit abu. Tapi abu adalah cangkang berbasis Bourne dan sebagian besar kompatibel dengan bash. Pengetahuan apa pun yang Anda miliki menggunakan bash akan mentransfer ke menggunakan abu atau shell dash, meskipun beberapa fitur scripting lanjutan tidak tersedia dalam shell ringan ini.

Hampir setiap shell yang Anda temui adalah Bourne-based dan bekerja sama - termasuk zsh.

Itu sebabnya zsh populer. Shell yang lebih baru ini kompatibel dengan bash, tetapi mencakup lebih banyak fitur. Shell zsh menawarkan koreksi ejaan built-in, peningkatan penyelesaian baris perintah, modul yang dapat dimuat yang bertindak sebagai plug-in untuk shell Anda, alias global yang memungkinkan Anda untuk alias nama file atau apa pun pada baris perintah, bukan hanya perintah, dan dukungan lebih banyak tema. Ini seperti bash, tetapi dengan banyak ekstra, fitur tambahan, dan opsi yang dapat dikonfigurasi yang mungkin Anda hargai jika Anda menghabiskan banyak waktu di baris perintah.

Jika Anda mengenal bash, Anda dapat beralih ke zsh tanpa mempelajari sintaks yang berbeda - Anda hanya akan mendapatkan fitur tambahan. jika Anda akrab dengan zsh, Anda dapat beralih ke bash tanpa mempelajari sintaks yang berbeda - Anda tidak akan memiliki akses ke fitur tersebut.

"Oh My ZSH" adalah alat yang membantu Anda lebih mudah mengaktifkan plug-in zsh dan beralih di antara tema-tema yang dibuat sebelumnya, dengan cepat menyesuaikan shell zsh Anda tanpa menghabiskan waktu berjam-jam untuk mengatur berbagai hal.
"Oh My ZSH" adalah alat yang membantu Anda lebih mudah mengaktifkan plug-in zsh dan beralih di antara tema-tema yang dibuat sebelumnya, dengan cepat menyesuaikan shell zsh Anda tanpa menghabiskan waktu berjam-jam untuk mengatur berbagai hal.

Ada cangkang lainnya juga. Sebagai contoh, shell tcsh masih ada dan masih menjadi pilihan. FreeBSD menggunakan tsch sebagai shell dan abu root default sebagai shell interaktif default. Jika Anda menggunakan pemrograman C secara teratur, mungkin akan lebih cocok bagi Anda. Namun, tempat ini tidak terlalu umum digunakan seperti bash atau zsh.

Cara Berpindah Di Antara Kerang

Sangat mudah untuk beralih ke shell baru untuk mencobanya. Cukup instal shell dari manajer paket distribusi Linux Anda dan ketikkan perintah untuk meluncurkan shell.

Misalnya, katakanlah Anda ingin mencoba zsh di Ubuntu. Anda akan menjalankan perintah berikut untuk memasang dan kemudian meluncurkannya:

sudo apt install zsh zsh

Anda kemudian akan duduk di zsh shell. Ketik”

exit

Di shell untuk meninggalkannya dan kembali ke shell Anda saat ini.

Ini hanya sementara. Setiap kali Anda membuka jendela terminal baru atau masuk ke sistem Anda di baris perintah, Anda akan melihat shell default Anda. Untuk mengubah cangkang yang Anda lihat saat masuk - dikenal sebagai cangkang login - biasanya Anda dapat menggunakan
Ini hanya sementara. Setiap kali Anda membuka jendela terminal baru atau masuk ke sistem Anda di baris perintah, Anda akan melihat shell default Anda. Untuk mengubah cangkang yang Anda lihat saat masuk - dikenal sebagai cangkang login - biasanya Anda dapat menggunakan

chsh

atau "Ubah Shell", perintah.

Untuk menggunakan perintah ini, Anda harus terlebih dahulu menemukan jalur lengkap ke shell Anda dengan perintah yang mana. Sebagai contoh, katakanlah kita ingin mengubah ke shell zsh. Kami akan menjalankan perintah berikut:

which zsh

Di Ubuntu, ini memberitahu kita biner zsh disimpan di / usr / bin / zsh.

Jalankan perintah berikut, masukkan kata sandi Anda, dan Anda akan diminta untuk memilih shell login baru:

chsh

Sesuai dengan perintah di atas, kami akan masuk

/usr/bin/zsh

. Shell zsh akan menjadi standar kami sampai kami menjalankannya

chsh

perintah dan mengubahnya kembali.

Direkomendasikan: