Lebih
Apa warna yang berbeda berarti di ls?
Apa warna yang berbeda di Ubuntu's ls
perintah berarti? Misalnya, ketika saya ketik ls
command di salah satu folder saya, saya mendapatkan salah satu file di cahaya hijau, yang lain (yang folder) warna biru dengan hijau menyoroti.
Apa yang mereka warna rata-rata, dan ada petunjuk tentang semua warna?
371
5
Untuk Informasi anda:
.bashrc
.mengaktifkan dukungan warna ls dan juga menambah berguna alias
if [ -x /usr/bin/dircolors ]; kemudian
uji -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
alias ls='ls --color=auto'
#alias dir='dir --warna=auto'
#alias vdir='vdir --warna=auto'
alias grep='grep --color=auto'
alias fgrep='fgrep --warna=auto'
alias egrep='egrep --warna=auto'
fi
eval $(echo "tidak ada:default global;fi:file normal;di:direktori;ln:link simbolik;pi:nama pipa;jadi:socket;melakukan:pintu;bd:perangkat blok;cd:perangkat karakter;atau:yatim piatu symlink;mi:file yang hilang;su:set uid;sg:set gid;tw:lengket lainnya ditulisi;ow:lain-lain ditulis;st:lengket;ex:eksekusi;"|sed -e 's/:/="/g; s/\;/"\n/g') { IFS=: for i in $LS_COLORS lakukan echo -e "\e[${i#=}m$( x=${i%=}; [ "${!x" ] && echo "${!x" || echo "$x" )\e[m" dilakukan }
Output:
Catatan:
man dir_colors
di terminal.Anda dapat mencari tahu apa warna
ls
menggunakan dengan melihat$LS_COLORS
variabel:Selain itu, file yang colourised dengan atribut:
aac, au, flac, mid, midi, mka, mp3, mpc, ogg, ra, wav, axa, oga, spx, xspf.
tar, tgz, arj, taz, lzh, lzma, tlz, txz, zip, z, Z, dz, gz, lz, xz, bz2, bz, tbz, tbz2, tz, deb, rpm, jar, rar, ace, kebun binatang, cpio, 7z, rz.
jpg, jpeg, gif, bmp, pbm, pgm, ppm, tga, xbm, xpm, tif, tiff, png, svg, svgz, mng, pcx, mov, mpg, mpeg, m2v, mkv, ogm, mp4, m4v, mp4v, vob, qt, nuv, wmv, asf, rm, rmvb, flc, avi, fli, flv, gl, dl, xcf, xwd, yuv, cgm, emf, axv, anx, ogv, ogx.
Semua informasi ini terkandung dalam output
dircolors --print-database
, tapi format yang agak tidak terbaca.Berikut ini's penjelasan teknis dari apa yang's terjadi:
Contoh:
Kode warna terdiri dari tiga bagian:
Bagian pertama sebelum tanda titik koma merupakan gaya teks.
00=tidak ada, 01=bold, 04=garis bawah, 05=blink, 07=reverse, 08=tersembunyi.
Bagian kedua dan ketiga adalah warna dan warna latar belakang:
30=hitam, 31=merah, 32=hijau, 33=kuning, 34=biru, 35=magenta, 36=cyan, 37=putih.
Masing-masing bagian dapat dihilangkan, dengan asumsi mulai di sebelah kiri. yaitu "01" berarti berani, "01;31" berarti berani dan merah. Dan anda akan mendapatkan terminal anda untuk mencetak dalam warna dengan melarikan diri instruksi dengan
\33[
dan berakhir denganm
. 33, atau 1B dalam heksadesimal, adalah ASCII tanda "MELARIKAN diri" (karakter khusus dalam set karakter ASCII). Contoh:Cetakan "Hello World" merah terang.
Perintah
ls
dengan argumen--warna=auto
(pada Ubuntu,ls
alias untukls --color=auto
) pergi melalui semua nama file dan mencoba pertama untuk mencocokkan berbagai jenis, seperti Eksekusi, Pipa dan sebagainya. Hal ini kemudian mencoba untuk mencocokkan ekspresi reguler seperti *.wav dan cetakan yang dihasilkan filename, tertutup dalam warna-mengubah instruksi untuk bash.Jika anda tipe
dircolors
(echo $LS_COLORS
juga bekerja) dari baris perintah, anda akan mendapatkan daftar kode dan warna untuk banyak tipe file dalam 1 baris.dircolors --print-database
menunjukkan mereka 1 baris pada satu waktu. Berikut ini adalah daftar pendek (saya mencoba untuk dimasukkan ke dalam yang paling penting). Di bagian bawah ada penjelasan tentang apa kode yang berbeda pada akhir masing-masing garis mewakili:00=none 01=bold 04=menggarisbawahi 05=blink 07=reverse 08=tersembunyi
30=hitam 31=merah 32=hijau 33=kuning 34=biru 35=magenta 36=cyan 37=putih
40=hitam 41=merah 42=hijau 43=kuning 44=blue 45=magenta 46=cyan 47=putih
Jika anda ingin bermain-main dengan berikut ini adalah contoh tentang bagaimana untuk mengatur warna untuk file:
Ini akan mengatur
*.ogg
dan.mp3
untukberani magenta
. Dan jika anda memasukkannya ke dalam.bashrc
file itu akan menjadi permanen.Ini memperluas pada Karthick87's jawaban.
Dengan setup default
ls -l
)Script untuk menampilkan warna
Output dengan pengaturan default:
Output dengan setup saya (custom dircolors dan custom Solarized terminal tema):
Saya mendapat penjelasan dari
dircolors -p
danman dir_colors
, dan mengisi kesenjangan dengan penelitian saya sendiri.Warna dan deskripsi yang sama dari 14.04 untuk 17.10.
Tidak ada jawaban di sini termasuk 256 pilihan warna di versi terbaru dari Ubuntu. I'm warna kekurangan (beberapa warna yang memberikan saya kesulitan dekat satu sama lain) jadi blue default direktori pada hitam adalah nyata sulit bagi saya untuk membaca. Berikut ini adalah penelitian saya untuk mengubah itu.
Jenis
dircolors -p |kurang
untuk melihat anda saat ini kode warna.Default .bashrc harus sudah dikonfigurasi tidak hanya untuk mengambil keuntungan dari sistem kode warna, tetapi juga salah satu di ~/.dircolors sehingga dump dircolors output .dircolor sehingga anda dapat mulai dengan yang menggunakan perintah ini.
dircolors -p > ~/.dircolors
Alternatif: pick up yang sangat mirip 256 warna dircolors dari seebi's solarized proyek.
Ambil ini colortest script dan menjalankannya dengan perintah
colortest -w
sehingga anda dapat melihat semua warna sekaligus. Memilih warna. Saya suka orange #208. Aku ingin hal itu menjadi warna teks dengan menggunakan info ini diperpanjang kode warna, saya bisa menerapkan itu.Jadi anda memiliki warna, sekarang apa. Pertama kita harus membuat string.
Nomor pertama yang akan menjadi atribut kode, kemungkinan besar 00, tetapi jika anda ingin berkedip pergi dengan 05:
Berikutnya pilih append
;38;5;
bahwa atribut kode untuk menunjukkan warna teks untuk dapatkan 00;38;5; dan kemudian menambahkan warna anda. Aku memilih 208 jadi saya mendapatkan00;38;5;208
.Jika anda juga ingin menempatkan latar belakang pada itu, memilih warna lain (let's mengatakan 56) dengan colortest script dan menambahkan
;48;5;
untuk latar belakang dan 56 untuk warna untuk mendapatkan total string00;38;5;208;48;5;56
.Jadi sekarang anda punya, apa yang anda lakukan dengan itu?
vim ~/.dircolors
dan menemukan bagian yang ingin anda ubah (bagi saya yang DIR) untuk string kita ditentukan di atas "00;38;5;208".Ini won't berlaku segera, anda'll perlu load config. Gunakan
dircolors ~/.dircolors
untuk mendapatkan kode untuk mengatur LS_COLORS variabel. Anda hanya bisa paste ke terminal sesi atau anda dapat menutup terminal anda dan buka kembali. Anda bisa juga pipa itu ke dalam sebuah file dan menjalankannya sebagai sebuah shell script.Anda bisa melakukan prosedur yang sama dengan 16 warna. Anda don't perlu khusus ;38;5 ;48;5 hal. Hanya melemparkan angka ke string dan menikmati kesederhanaan.
Terima kasih untuk Dan dan seebi untuk catatan mereka dan kode ini.