Bagaimana Anda bisa membuat bash shell daftar file yang dapat dieksekusi dalam warna yang berbeda dari file yang tidak dapat dieksekusi?
Saya sudah mencoba mengedit ~/.bashrc
mengandung baris berikut (jika tidak, kosong):
LS_OPTIONS='--color=auto'
Tapi itu tidak berhasil. Apa yang saya lakukan salah? Saya sedang mengerjakan Mac OS X.
Masalahnya adalah bahwa OS X tidak memiliki GNU
ls
; sementara ituls
tidak mendukung pewarnaan nama file, itu hanya dapat melakukannya dengan jenis file (file, direktori, symlink, file perangkat khusus, fifo, socket ...). Instalcoreutils
dari Fink / MacPorts / HomeBrew, lalu gunakanalias ls='gls --color=auto'
.sumber
coreutils
dari MacPorts. Haruskahalias
salurannya masuk~/.bashrc
? Di situlah saya meletakkannya, tetapi saya tidak melihat perbedaan.~/.bash_aliases
mungkin bekerja lebih baik. Saya juga menemukan bahwa saya perlu berlarieval $(gdircolors -s)
untuk mengaturnya.gdircolors: invalid option -- 's'
maksudmu--sh
?BSD bekerja sedikit berbeda
harus bekerja.
Dan ini bukan pewarnaan bash, ini adalah
ls
pewarnaan. Ketika bash membuat daftar file (cobaecho *
di direktori) tidak ada cara untuk mewarnai. Mengetikls -G
akan bekerja di shell apa pun, meskipun shell (seperti bash) yang memiliki alias membuatnya lebih mudah.sumber
Di Mac, Anda perlu menggunakan
Saya meletakkannya di .bash_profile. Namun, saya lebih suka solusi Rich Homolka daripada alias ls dengan -G flag. Jika Anda ingin menyesuaikan warna:
dan cari LSCOLORS
sumber
Pertimbangkan untuk menginstal
brew
dan menggunakan versi ls GNU dan alat lainnya.Instal XCode dari AppStore.
Instal Homebrew ...
Instal coreutils ...
Tambahkan ke bagian bawah
.profile
...Saya alias
ls
di saya.profile
untuk melakukan warna untuk semuanya dan jalan pintas untuk daftar lengkap.Ada banyak
LS_COLORS
opsi di github .sumber
bash
hanya sebuah shell, tidak mencantumkan file. Ini menjalankan perintah, sepertils
.The
--color
pilihan (dan pilihan panjang pada umumnya) adalah khusus untuk versils
dari GNU coreutils , yang datang dengan sebagian besar distribusi Linux. Di sisi lain, Mac OS X memiliki akar BSD dan menggunakan versi BSDls
yang tidak mendukung pewarnaan.sumber
-G
.