Apakah ada variabel env untuk mengaktifkan --color (dan sejenisnya) untuk semua perintah?

9

Saya menggunakan alias untuk mengaktifkan warna untuk beberapa perintah secara default. Tapi aku bertanya-tanya apakah ada cara yang lebih mudah dalam menceritakan sistem saya, warna didukung, jangan membuat saya gunakan --coloruntuk grep, ls, dll

xenoterracide
sumber

Jawaban:

8

FreeBSD memiliki CLICOLOR .

Di Linux dan sistem lain dengan alat GNU, Anda perlu mengatur LS_COLORS, GREP_COLOR, dan GREP_OPTIONS = '- color = auto', tetapi meskipun begitu Anda masih harus menjalankannya ls --color=auto. Jalankan info coreutils 'ls invocation'untuk detail lebih lanjut.

Cara termudah yang saya tahu untuk menghindari mengetik --colordi Linux adalah lsmenjalankan ls --color=automenggunakan alias.

Inilah yang saya masukkan ke dalam .bashrc saya (well, sungguh .env saya, tapi ini seperti .bashrc) untuk mewujudkannya secara default:

# set default flags
if grep --color=auto --quiet "" "$HOME"/.bashrc >/dev/null 2>&1
then
  alias grep='grep --color=auto'
fi
if ls --color=never --directory / >/dev/null 2>&1
then
  # enable colors with GNU ls
  alias ls='ls --color=auto'
else
  alias ls='ls -F'
fi
Mikel
sumber
3
GNU gagal dalam hal ini
xenoterracide