GNU/Linux >> Belajar Linux >  >> Linux

UNIX / Linux :Apa itu Shell? Apa Shells yang berbeda?

Apa itu Cangkang?

Shell adalah program yang menyediakan antarmuka antara pengguna dan kernel sistem operasi (OS). OS memulai shell untuk setiap pengguna saat pengguna masuk atau membuka terminal atau jendela konsol.

Kernel adalah program yang:

  • Mengontrol semua operasi komputer.
  • Mengkoordinasikan semua utilitas pelaksana
  • Memastikan bahwa menjalankan utilitas tidak saling mengganggu atau menghabiskan semua sumber daya sistem.
  • Menjadwalkan dan mengelola semua proses sistem.

Dengan berinteraksi dengan kernel, shell menyediakan cara bagi pengguna untuk menjalankan utilitas dan program.

Lingkungan Pengguna

Shell juga menyediakan lingkungan pengguna yang dapat Anda sesuaikan menggunakan file inisialisasi. File-file ini berisi pengaturan untuk karakteristik lingkungan pengguna, seperti:

  • Telusuri jalur untuk menemukan perintah.
  • Izin default pada file baru.
  • Nilai untuk variabel yang digunakan program lain.
  • Nilai yang dapat Anda sesuaikan.

Apa perbedaan Shell?

Bagian berikut menjelaskan cangkang OS yang sebagian besar tersedia di sistem Operasi UNIX/Linux. Fitur Shell dan perintah defaultnya juga dijelaskan.

1. Kulit Bourne

Cangkang Bourne (sh), yang ditulis oleh Steve Bourne di AT&T Bell Labs, adalah cangkang UNIX asli. Ini adalah shell yang disukai untuk pemrograman shell karena kekompakan dan kecepatannya. Kelemahan Bourne shell adalah tidak memiliki fitur untuk penggunaan interaktif, seperti kemampuan untuk mengingat perintah sebelumnya (riwayat). Shell Bourne juga tidak memiliki penanganan ekspresi aritmatika dan logika bawaan.

Shell Bourne adalah shell default Solaris OS. Ini adalah shell standar untuk skrip administrasi sistem Solaris. Untuk shell Bourne:

  • Nama jalur lengkap perintah adalah /bin/sh dan /sbin/sh .
  • Perintah default pengguna non-root adalah $ .
  • Perintah default pengguna root adalah # .

2. Kulit C

Cangkang C (csh):

  • Apakah peningkatan UNIX yang ditulis oleh Bill Joy di Universitas California di Berkeley.
  • Fitur terintegrasi untuk penggunaan interaktif, seperti alias dan riwayat perintah .
  • Mencakup fitur pemrograman yang praktis, seperti aritmatika bawaan dan sintaks ekspresi mirip-C .

Untuk cangkang C:

  • Nama jalur lengkap perintah adalah /bin/csh .
  • Permintaan default pengguna non-root adalah nama host % .
  • Permintaan default pengguna root adalah nama host # .

3. Kulit Korn

Kulit Korn (ksh):

  • Ditulis oleh David Korn di AT&T Bell Labs
  • Merupakan superset dari cangkang Bourne.
  • Mendukung semua yang ada di shell Bourne.
  • Memiliki fitur interaktif yang sebanding dengan yang ada di shell C.
  • Mencakup fitur pemrograman yang mudah digunakan seperti aritmatika bawaan dan Array mirip-C , fungsi , dan fasilitas manipulasi string .
  • Lebih cepat dari shell C.
  • Menjalankan skrip yang ditulis untuk shell Bourne.

Untuk kulit Korn:

  • Nama jalur lengkap perintah adalah /bin/ksh .
  • Perintah default pengguna non-root adalah $ .
  • Perintah default pengguna root adalah # .

4. Shell Bourne-Again GNU

Shell GNU Bourne-Again (bash):

  • Kompatibel dengan shell Bourne.
  • Menggabungkan fitur berguna dari cangkang Korn dan C.
  • Memiliki tombol panah yang dipetakan secara otomatis untuk memanggil dan mengedit perintah.

Untuk shell GNU Bourne-Again:

  • Nama jalur lengkap perintah adalah /bin/bash .
  • Permintaan default untuk pengguna non-root adalah bash-x.xx$ . (Di mana x.xx menunjukkan nomor versi shell. Misalnya, bash-3.50$)
  • Permintaan default pengguna root adalah bash-x.xx# . (Di mana x.xx menunjukkan nomor versi shell. Misalnya, bash-3.50$#)

Berikut adalah perbandingan singkat dari keempat shell dan propertinya.

Cangkang Jalan Perintah Default (pengguna non-root) Perintah Default (Pengguna root)
Kulit Bourne (sh) /bin/sh dan /sbin/sh $ #
Cangkang C (csh) /bin/csh % #
Kulit Korn (ksh) /bin/ksh $ #
GNU Bourne-Again Shell (Bash) /bin/bash bash-x.xx$ bash-x.xx#


Linux
  1. Linux – Apakah Kernel Linux/unix yang Berbeda Dapat Dipertukarkan?

  2. Apa itu umask di UNIX/Linux

  3. Apa itu file jarang di Linux

  1. Apa buku Linux/Unix yang bagus untuk pengguna tingkat lanjut?

  2. Apa yang dilakukan % di string shell Linux?

  3. Apa saja cara berbeda agar pesan dapat ditampilkan ke bash shell setelah pengguna masuk?

  1. Apa itu pengguna Linux?

  2. Apakah kernel Linux/Unix yang berbeda dapat dipertukarkan?

  3. Jalankan skrip shell sebagai pengguna yang berbeda