Blogs

Bagaimana Cara Kerja File Konfigurasi Zsh?

Pemula sering kali bingung saat mengkonfigurasi Zsh shell di Mac.

Zsh Shell menawarkan empat file konfigurasi tanpa perbedaan yang mencolok. Khususnya, ~/.zshrc Dan ~/.zprofile tampak identik, membuat kita bertanya-tanya mana yang akan digunakan.

Pada artikel ini, Anda akan mempelajari perbedaan dan panduan sederhana untuk konfigurasi shell Anda.

Mengapa Anda Membutuhkan Konfigurasi?

Untuk pemrograman di Mac, aplikasi Terminal adalah alat penting dalam lingkungan pengembangan Anda. Terminal adalah antarmuka baris perintah (CLI) yang memungkinkan Anda berinteraksi dengan sistem operasi dan menjalankan perintah.

Terminal atau konsol memberi Anda akses ke baris perintah Unix, atau shell.

Zsh, juga dikenal sebagai Z shell, adalah program yang berjalan di Terminal, menafsirkan perintah Unix, dan berinteraksi dengan sistem operasi. Zsh adalah program shell default di MacOS.

Sebelum memulai pemrograman di Mac, Anda perlu mengkonfigurasi shell. Ada pengaturan opsional dan nyaman, seperti alias untuk perintah yang sulit diingat dan immediate khusus yang dapat menampilkan direktori tempat Anda berada, antara lain.

Ada juga beberapa variabel lingkungan penting yang membuat program tersedia atau mengubah perilaku shell. Itu EDITOR variabel lingkungan, misalnya, dapat mengatur editor teks pilihan Anda. Seringkali, ketika menginstal bahasa pemrograman atau utilitas perangkat lunak, Anda perlu mengaturnya PATH variabel lingkungan..

Mulai dari mana

File konfigurasi Zsh disimpan di direktori dwelling pengguna dan diberi nama dengan titik sebagai karakter pertama yang menyembunyikannya secara default.

Zsh mengenali empat file konfigurasi berbeda di direktori dwelling pengguna: ~/.zshenv, ~/.zprofile, ~/.zshrcDan ~/.zlogin.

Di sinilah konfigurasi Zsh menjadi membingungkan, bahkan bagi pengembang berpengalaman. Tutorial jarang menjelaskan perbedaannya, terutama antar zprofile Dan zshrc file, membuat pengembang yang penasaran menggaruk-garuk kepala dan mengikuti instruksi secara membabi buta.

Bagaimana Shell Digunakan?

Untuk memahami perbedaan antara file konfigurasi Zsh, pertimbangkan berbagai penggunaan shell, yang dapat diklasifikasikan sebagai sesi interaktif atau non-interaktif, login atau non-login.

  1. Di macOS, setiap sesi terminal baru diperlakukan sebagai shell login, jadi membuka jendela terminal mana pun akan memulai sesi login interaktif. Selain itu, administrator sistem yang terhubung ke server jarak jauh melalui SSH memulai sesi login interaktif.
  2. Jika jendela terminal sudah terbuka dan Anda menjalankan perintah zsh untuk memulai subkulit, itu akan bersifat interaktif dan non-login. Pemula jarang menggunakan subkulit.
  3. Skrip shell otomatis dijalankan tanpa login atau perintah pengguna apa pun. Ini adalah non-interaktif dan non-login.
  4. Hanya sedikit orang yang pernah menemukan sesi shell login non-interaktif. Ini memerlukan memulai skrip dengan flag khusus atau menyalurkan output dari suatu perintah ke koneksi SSH.

Bagaimana Cara Kerja File Konfigurasi?

Kasus penggunaan ini memerlukan konfigurasi shell yang berbeda, yang menjelaskan mengapa Zsh mendukung empat file konfigurasi berbeda. Berikut cara file konfigurasi digunakan:

  • ~/.zshenv: Ini dimuat secara common untuk semua jenis sesi shell (interaktif atau non-interaktif, login atau non-login). Ini adalah satu-satunya file konfigurasi yang dimuat untuk skrip non-interaktif dan non-login seperti pekerjaan cron. Namun, MacOS mengesampingkan hal ini untuk PATH pengaturan untuk shell interaktif.
  • ~/.zprofile: Dimuat untuk shell login (sesi interaktif dan non-interaktif yang jarang terjadi). MacOS menggunakan ini untuk menyiapkan shell untuk setiap jendela terminal baru. Subkulit yang dimulai dalam jendela terminal mewarisi pengaturan tetapi tidak dimuat ~/.zprofile lagi.
  • ~/.zshrc: Dimuat hanya untuk sesi shell interaktif. Itu dimuat setiap kali Anda membuka jendela terminal baru atau meluncurkan subkulit dari jendela terminal.
  • ~/.zlogin: Hanya digunakan untuk konfigurasi shell login, dimuat setelahnya .zprofile. Ini dimuat setiap kali Anda membuka jendela terminal baru.
zsh-diagram

Cara Menggunakan Setiap File

Dengan mengingat hal tersebut, mari pertimbangkan file konfigurasi mana yang harus Anda gunakan.

  • ~/.zshenv: Ini dimuat secara common, sehingga Anda dapat menggunakannya untuk mengkonfigurasi shell untuk proses otomatis seperti pekerjaan cron. Namun, yang terbaik adalah menyiapkan variabel lingkungan secara eksplisit untuk proses otomatis dalam skrip dan tidak membiarkan apa pun terjadi secara kebetulan. Sebagai pemula, Anda tidak akan menggunakan file konfigurasi ini. Faktanya, hanya sedikit pengembang macOS berpengalaman yang menggunakannya.
  • ~/.zprofile: Homebrew merekomendasikan pengaturan PATH variabel di sini. Ada alasannya PATH harus diatur ~/.zprofile dan bukan yang common ~/.zshenvfile: macOS menjalankan utilitas path_helper (dari /and so forth/zprofile) yang menetapkan PATH memesan sebelumnya ~/.zprofile dimuat.
  • ~/.zshrc: Ini adalah file konfigurasi yang digunakan sebagian besar pengembang. Gunakan untuk mengatur alias dan immediate khusus untuk jendela terminal. Anda juga dapat menggunakannya untuk mengatur PATH (yang dilakukan banyak orang) tetapi ~/.zprofile lebih disukai.
  • ~/.zlogin: Ini jarang digunakan. Hanya penting dalam mengelola urutan tugas inisialisasi untuk shell login di lingkungan yang kompleks. Ini dapat digunakan untuk menampilkan pesan atau information sistem.

Bagaimana Menghindari Komplikasi

Konfigurasi ini mungkin tampak rumit. Masuk akal pada masa-masa awal komputasi untuk memulai proses yang memakan waktu saat login dan tidak mengulanginya saat terminal baru diluncurkan.

MacOS sekarang meluncurkan jendela terminal baru sebagai shell login, memuat keduanya ~/.zprofile Dan ~/.zshrc file tanpa mempedulikan waktu startup shell. Jadi mengapa tidak menggunakan satu file konfigurasi Zsh? Mengikuti sejarah, ditambah penyesuaian konfigurasi untuk para ahli.

Keuntungan utama dari ~/.zprofile file (versus ~/.zshenv) adalah menetapkan variabel lingkungan seperti PATH tanpa menimpa dari macOS. Itu ~/.zshrc File dapat digunakan untuk hal yang sama tetapi, berdasarkan konvensi dan desain, dimaksudkan untuk menyesuaikan tampilan dan nuansa terminal interaktif.

Tetap Sederhana

Jika Anda mencari panduan sederhana, inilah praktik terbaik saat ini.

  • Menggunakan ~/.zprofile untuk mengatur PATH Dan EDITOR variabel lingkungan.
  • Menggunakan ~/.zshrc untuk alias dan immediate khusus, mengubah tampilan dan perilaku terminal.
  • Jika Anda menulis skrip shell otomatis, periksa dan atur variabel lingkungan dalam skrip.

Informasi Lebih Lanjut

Saya telah menulis panduan lain yang merinci hal-hal berikut:

Jika Anda baru memulai, Anda harus mengetahui Cara Membuka Terminal Mac dan Menginstal Alat Baris Perintah Xcode.

Mengonfigurasi shell Zsh adalah langkah penting dalam mempersiapkan lingkungan pengembangan Mac Anda. Setelah lingkungan pengembangan Anda siap, Anda akan siap menghadapi tutorial apa pun yang Anda temukan di freeCodeCamp.

Related Articles

Leave a Reply

Your email address will not be published. Required fields are marked *

Back to top button