Use a expansão de comando do shell $(...)
para alternar o nome do arquivo de saída.
Este código verifica apenas o aix. O comportamento padrão atualiza o .bashrc
.
echo "alias d='du -sm -- * 2>/dev/null | sort -nr | head -20'" >> $( case $(uname) in *[aA][iI][xX]*) echo ~/.kshrc;; *) echo ~/.bashrc;; esac )
Ou divida linhas para facilitar a leitura:
rcfile=$( case $(uname) in *[aA][iI][xX]*) echo ~/.kshrc;; *) echo ~/.bashrc;; esac )
echo "alias d='du -sm -- * 2>/dev/null | sort -nr | head -20'" >> $rcfile