Mac OS X'te çalışması için ls --color = auto komutunu nasıl alabilirim?


Yanıtlar:


78

lsaslında Bash'den ayrıdır. Mac OS X, komut satırında ya da (ve belki de ) ortamda lsgerektiren bir BSD versiyonuna sahiptir .-GCLICOLORLSCOLORS

Daha man lsfazla bilgi için bakınız .


5
Aynen. Ben ettik alias ls='ls -G'Snow Leopard benim .bashrc ayarlanır.
ayaz

Nedense, CLICOLOR=YMac'imde çalışmayı bıraktım. alias ls='ls -G'zorlardı lsrenklendirmek için. Bunu sadece etkileşimli terminaller için tanımlarım.
DKroot

31

Terminal penceresini açın ve şunu yazın:

alias ls='ls -G'

Sonra vur Enterve bitti!


10

Homebrew kullanın .

brew install coreutils

Bunun gtüm komutların önüne bir önek atacağını unutmayın (örneğin, glsiçin ls). Bunları sizin için otomatik olarak adlandıracak bir dosyayı kaynaklamak için bir seçenek sunar.

Tüm takma adı işlemine gerek kalmadan doğrudan yükleme seçeneği olup olmadığından emin değildim, bunun yerine yüklü MacPorts'ta bunu yaptım ve yaptım .


1
Çıktı şöyle diyor: Bu komutları gerçekten normal adlarıyla kullanmanız gerekiyorsa, şunları yapabilirsiniz ... Neden gerçekten üzerinde durur ? Dezavantajları nelerdir?
z0r

Ve sayfanızı archive.org’da asla arşivlemediniz ve şimdi son paragrafınızdaki bağlantınız
koptu

5

GNU ve * BSD / darwin ls için uyumluluk

~ / .Profile

#for *BSD/darwin
export CLICOLOR=1

ls --color=auto &> /dev/null && alias ls='ls --color=auto' ||

~ / .bashrc (Linux'ta bash'ın her zaman ~ / .profile okuyup okumadığını hatırlamıyorum, ancak ARCH'taki zsh'ımı değil)

[[ -f $HOME/.profile ]] && source $HOME/.profile

6
Bu kodu açıklayabilir misiniz?
bwDraco

1
CLICOLOR ortam değişkenini * BSD ve Darwin sistemleri için ayarlama - eğer ayarlanmışsa ve muhtemelen diğer yardımcı programlar renkli çalışacak olsalar da GNU ls (Linux için) bunu görmezden gelir. Eğer "ls --color = auto" başarısız olmazsa (çıkış durumu = 0) - ls GNU sürümüne sahibiz ve interaktif modda renk kodları çizmek için takma ad yapıyoruz, eğer başarısız olursa - o zaman CLICOLOR nedeniyle takma isme ihtiyacımız yok değişken. "&> / dev / null" sadece bir şey başarısız olursa ya da uygunsa stderr ve stdout gösterme. Linux ve osx'um için çalışıyor. (ps ve osx ve freebsd üzerinde bash .bashrc okumaz, bu yüzden .profile koyun. zaten düzeltildi).
Victor Gavro

2

Alternatif bir sürümünü yüklemeniz gerekir ls. Genellikle Linux'ta kullanılan, GNU coreutils projesindendir.

Macport , fink veya homebrew'den derleme yapabilir veya kurabilir ya da kurabilirsiniz .


4
Bu overkill, bence. lsAynı özelliğin, mevcut sürümünde biraz farklı şekilde desteklendiği zaman ayrı bir sürümünü kurmanıza gerek yoktur ls.
ayaz

İyi bir nokta. Sonra tekrar, renkli ls asla benim zevkim olmadı. alias ls='ls -F'
Doug Harris

alias ls='ls -FG'- Her iki dünyanın da en iyisi!
mipadi

1
Bunu homebrew kullanarak yapıyorum. Hem Mac hem de * nix bilgisayar kullanıyorsanız ve terminallerinizin aynı görünmesini istiyorsanız, bu tüm bilgisayarlarda aynı yapılandırma dosyalarını kullanmanıza izin verirse, bu çok üzücü değildir. Olarak takılıdır glsve orijinali değiştirmez, bu yüzden gerçekten dezavantajı yoktur.
gönderici

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.