A sintaxe do aliascomando é a mesma em todos os shells no estilo Bourne. Assim, você pode compartilhá-los através ~/.zshrc, ~/.bashrc, ~/.kshrc, ~/.shrc, contanto que eles fazem sentido em todas as conchas.
O mesmo vale para definições de variáveis e definições de funções, desde que você use o subconjunto de sintaxe suportado em todos os shells.
Se você não usar versões do zsh anteriores à 4.0, poderá colocar todas as suas definições independentes de shell em um arquivo chamado (digamos) ~/.common.rc.sh, em que a primeira linha é
emulate -LR sh 2>/dev/null
Isso diz ao zsh que espera apenas uma sintaxe compatível com sh neste arquivo. Então fonte desse arquivo perto do início ~/.bashrc, ~/.bashrc, ~/.kshrce assim por diante.
Isso é basicamente o que eu faço. Por exemplo, eu tenho o código um pouco complexa que gera um alias para lscom as minhas opções favoritas, dependendo do que está disponível ( --color, -G, -F, etc.); é agnóstico à casca, então entra .common.rc.sh. Eu também tenho aliases dependentes de shell, assim alias zcp='zmv -C'entra .zshrc.