Cara Mengubah Warna Direktori dan File di Perintah ls
Jika Anda sudah menjalankan ls
perintah di Bash, Anda akan melihat bahwa direktori dan file yang Anda lihat berwarna sesuai dengan tipenya. Anda dapat menyesuaikan skema warna Anda sendiri untuk memilih berbagai warna teks, warna latar belakang, dan format seperti huruf tebal dan garis bawah.
Bagaimana Ini Bekerja?
Skema warna disimpan dalam variabel LS_COLORS. Untuk melihat skema warna Anda saat ini, Anda dapat memberi tahu Bash untuk mencetak konten variabel:
echo $ LS_COLORS
Anda akan melihat daftar panjang jenis file dan kode angka. Kami akan menjelaskan cara membuat daftar seperti ini sendiri.
Sebelum bermain-main dengan ini, kami sarankan menyimpan konten saat ini dari variabel LS_COLORS ke variabel lain. Ini akan memungkinkan Anda untuk dengan cepat mengembalikan pengaturan default tanpa keluar dari shell dan masuk kembali, atau menutup dan membuka kembali jendela terminal. Untuk menyimpan konten variabel LS_COLORS saat ini ke variabel baru bernama ORIGINAL, jalankan:
ASLI = $ LS_COLORS
Kapan saja, Anda dapat menjalankan perintah berikut untuk membatalkan perubahan dan mengembalikan warna default:
LS_COLORS = $ ASLI
Perubahan Anda selalu bersifat sementara hingga Anda mengedit file untuk menjadikannya sebagai default baru Anda. Anda selalu dapat keluar dan masuk kembali atau menutup dan membuka kembali jendela terminal untuk mengembalikan warna ke pengaturan default. Namun, ini membuatnya mudah untuk melakukannya dengan satu perintah, cepat.
Cara Mengatur Warna Kustom
Variabel LS_COLORS berisi daftar jenis file bersama dengan kode warna yang terkait. Daftar default panjang karena menentukan warna yang berbeda untuk sejumlah jenis file yang berbeda.
Mari kita mulai contoh dasar untuk menunjukkan cara kerjanya. Katakanlah kita ingin mengubah warna direktori dari bold default menjadi bold red. Kita dapat menjalankan perintah berikut untuk melakukannya:
LS_COLORS = "di = 1; 31"
Itu di = 1; 31
sedikit memberitahu ls
direktori itu (di
) adalah (=
) tebal (1;
) merah (31
).
Namun, ini hanyalah variabel LS_COLORS yang sangat sederhana yang mendefinisikan direktori sebagai satu warna dan meninggalkan setiap jenis file lainnya sebagai warna default. Katakanlah kita ingin membuat file dengan ekstensi file .desktop dengan warna cyan yang digarisbawahi juga. Kita dapat menjalankan perintah berikut untuk melakukannya:
LS_COLORS = "di = 1: 31: *. Desktop = 4; 36"
Ini memberitahu ls
direktori itu (di
) adalah (=
) tebal (1;
) merah (31
) dan (:
) file apa pun yang berakhiran .desktop (*.Desktop
) aku s (=
) digarisbawahi (4;
) cyan (36
).
Ini adalah proses untuk merakit daftar jenis dan warna file Anda. Tentukan sebanyak yang Anda suka dalam bentuk filetype = color, pisahkan masing-masing dengan karakter titik dua (:).
Untuk menyusun daftar Anda sendiri, Anda hanya perlu mengetahui daftar kode warna dan kode jenis file. Ini menggunakan kode warna numerik yang sama yang Anda gunakan saat mengubah warna di Bash prompt Anda.
Berikut daftar kode warna untuk teks latar depan:
- Hitam: 30
- Biru: 34
- Cyan: 36
- Hijau: 32
- Ungu: 35
- Merah: 31
- Putih: 37
- Kuning: 33
Misalnya, karena teks kuning adalah kode warna 33, Anda akan menggunakannya di = 33
membuat direktori kuning.
Berikut daftar atribut warna teks:
- Teks Normal: 0
- Teks Tebal atau Terang: 1 (Tergantung emulator terminal.)
- Teks Dim: 2
- Teks yang digarisbawahi: 4
- Teks Berkedip: 5 (Ini tidak berfungsi di sebagian besar emulator terminal.)
- Teks Terbalik: 7 (Ini membalikkan warna latar depan dan latar belakang, sehingga Anda akan melihat teks hitam pada latar belakang putih jika teks saat ini adalah teks putih pada latar belakang hitam.)
- Teks Tersembunyi: 8
Saat menentukan atribut atau lebih dari satu kode warna, pisahkan daftar kode dengan karakter titik koma (;). Anda tidak perlu menentukan 0 untuk teks normal, karena teks normal digunakan ketika Anda tidak menentukan atribut di sini.
Misalnya, karena teks tebal adalah kode warna 1 dan teks kuning adalah kode warna 33, Anda akan menggunakannya di = 1; 33
untuk membuat direktori tebal kuning. Anda juga dapat menentukan lebih dari satu atribut. Misalnya, Anda bisa menggunakan di = 1; 4; 33
untuk membuat direktori tebal, garis bawah kuning.
Berikut daftar kode warna latar belakang:
- Latar belakang hitam: 40
- Latar belakang biru: 44
- Latar belakang sian: 46
- Latar belakang hijau: 42
- Latar belakang ungu: 45
- Latar belakang merah: 41
- Latar belakang putih: 47
- Latar belakang kuning: 43
Misalnya, karena latar belakang biru adalah kode warna 44, Anda akan menggunakannya di = 44
untuk menggunakan latar belakang biru untuk direktori. Anda juga dapat menggabungkan kode warna latar belakang, kode warna latar depan, dan atribut sebanyak yang Anda suka. Sebagai contoh, di = 1; 4; 33; 44
akan memberi Anda teks kuning tebal, bergaris bawah pada latar belakang biru.
Berikut daftar kode jenis file:
- Direktori: di
- File: fi
- Tautan Simbolik: ln
- Named Pipe (FIFO): pi
- Socket: jadi
- Block Device: bd
- Perangkat Karakter: cd
- Orphan Symbolic Link (menunjuk ke file yang tidak ada lagi): atau
- File Hilang (file yang hilang yang ditunjuk oleh tautan simbolik anak yatim): mi
- File yang Dapat Dieksekusi (memiliki izin "x"): ex
- *. ekstensi: File apa pun yang diakhiri dengan ekstensi yang Anda tentukan. Misalnya, gunakan * .txt untuk file yang berakhiran .txt, * .mp3 untuk file yang berakhiran .mp3, * .desktop untuk file yang berakhiran .desktop, atau apa pun yang Anda suka. Anda dapat menentukan sebanyak mungkin ekstensi file yang Anda inginkan.
Tentukan berbagai jenis kode jenis file dengan warna berbeda sebanyak yang Anda suka, dipisahkan oleh karakter :. Ulangi proses ini untuk mengumpulkan variabel LS_COLORS Anda.
Misalnya, Anda ingin menggunakan teks ungu tebal untuk direktori, menggarisbawahi teks merah untuk file yang dapat dieksekusi, dan teks hijau tebal pada latar belakang merah untuk file .mp3. Dengan mengumpulkan kode jenis file dan kode warna dari daftar di atas, Anda akan mendapatkan:
LS_COLORS = "di = 1; 35: ex = 4; 31: *. Mp3 = 1; 32; 41"
Cara Mengatur Warna Default Baru Anda
Anda sekarang memiliki variabel LS_COLORS khusus yang berfungsi dalam sesi Bash saat ini. Namun, Anda mungkin ingin membuatnya permanen sehingga secara otomatis digunakan setiap kali Anda memulai sesi Bash baru tanpa Anda harus mengingat ini.
Anda dapat mengatur variabel LS_COLORS khusus Anda - dan variabel Bash lainnya yang Anda suka - dengan menambahkannya ke file .bashrc akun pengguna Anda. File ini terletak di ~ / .bashrc. Jadi, jika nama pengguna Anda adalah bob, Anda akan menemukannya di /home/bob/.bashrc. Ada cara lain untuk mengatur variabel lingkungan juga, tetapi ini sederhana.
Pertama, buka file ini di editor teks pilihan Anda. Kami akan menggunakan nano di sini sebagai contoh, tetapi Anda dapat menggunakan vi, emacs, atau apa pun yang Anda suka.
nano ~ / .bashrc
Tambahkan variabel LS_COLORS khusus Anda ke baris baru di akhir file, seperti:
LS_COLORS = "di = 1; 35: ex = 4; 31: *. Mp3 = 1; 32; 41"
Simpan file dan keluar. Di nano, tekan Ctrl + O dan kemudian tekan Enter untuk menyimpan, lalu tekan Ctrl + X untuk keluar.
Setiap kali Anda memulai sesi Bash baru, Bash akan membaca file .bashrc dan secara otomatis mengatur variabel LS_COLORS Anda. Untuk mengubah warna Anda di masa mendatang, kembali ke file .bashrc Anda dan edit garis LS_COLORS.
Anda juga dapat menghapus saja LS_COLORS =
baris yang Anda tambahkan ke file .bashrc Anda untuk menggunakan warna default lagi. Jika Anda tidak menetapkan nilai LS_COLORS, Bash akan menggunakan warna default.