Quando você está tentando fazer algo portável, teste os recursos, não as plataformas:
if ls --help 2>&1 | grep -q -- --color
then
alias ls='ls --color=auto -F'
else
alias ls='ls -FG'
fi
Testes de plataforma quebram quando as plataformas mudam. O macOS vem com um mix de ferramentas BSD e GNU userland hoje, mas esse mix é mudando com o tempo para uma maior preponderância de ferramentas BSD. Assim, um teste para "macOS" hoje pode falhar amanhã, quando a Apple substituir uma ferramenta GNU da qual você estava dependendo com o equivalente BSD mais próximo, se você estiver contando com um recurso que os dois implementam de maneira diferente. Os testes de recursos costumam continuar trabalhando em face da mudança.
Como bônus, você às vezes acaba criando suporte para plataformas que você não testou originalmente. O fragmento de script acima também deve fazer a coisa certa no Solaris e no FreeBSD, por exemplo.
(Esta é a filosofia por trás do GNU Autoconf, por falar nisso, e é por isso que um script configure
escrito há 10 anos provavelmente ainda funciona em um novo sistema atualmente.)
Modifique os aliases para se adequarem. Estou mostrando apenas os valores que uso nos sistemas macOS e Linux mais próximos à mão enquanto escrevo isso.