Как получить то же самое с цветами, работающими как на OSX, так и на Ubuntu?

Когда я хочу цвета в Ubuntu, я делаю

alias ls='ls --color=always' 

но на OSX это дает ошибку ls: illegal option -- - и мне нужно сделать

 alias ls ='ls -G' 

Как я могу создать псевдоним с тем же кодом и работать ли он в обеих системах?

  • Как получить REAL gcc (не тот, который хэшируется для clang) в MacOS?
  • что означает @ в ls -l?
  • lrzsz не работает в моей Mac OS X
  • Поиск времени выполнения команды в ретроспективе
  • mpg321 не автовоспроизведение песен
  • Не удалось согласовать алгоритм ssh
  • Верните имя пользователя, который только что вошел в систему в сценарии входа в систему
  • Могу ли я получить WCHAN от ps на Mac OS X 10.7.4?
  • One Solution collect form web for “Как получить то же самое с цветами, работающими как на OSX, так и на Ubuntu?”

    Этот код работает:

     ls --color=al > /dev/null 2>&1 && alias ls='ls -F --color=al' || alias ls='ls -GF' 

    В основном он видит, работает ли ls color = al. Если ошибка ( 2>&1 ) не используется, else (ошибка) использует другой формат.

    test_condition && ... || ... test_condition && ... || ... является сокращением bash, if test_condition then ... else ...

    Linux и Unix - лучшая ОС в мире.