Comment pouvez-vous exporter votre .bashrc vers .zshrc?

J’essaie de passer à zsh de Bash.

J’ai mis mon .bashrc directement sur mon .zshrc, et cela a causé beaucoup d’erreurs quand j’essaie encore d’utiliser Bash.

Comment pouvez-vous exporter votre .bashrc vers .zshrc?

Alors que la réponse de lhunath m’a poussé dans la bonne direction, zsh ne semble pas .profile automatiquement .profile . Beaucoup de bonnes informations sur ce sujet peuvent être trouvées sur ce post de superutilisateur .

L’adaptation que j’utilise consiste à placer des alias et des fonctions communs dans .profile et à les rechercher manuellement comme suit:

.bashrc

source ~/.profile

.zshrc

[[ -e ~/.profile ]] && emulate sh -c 'source ~/.profile'

Vous ne pouvez pas ” exporter ” votre .zshrc .bashrc vers un .zshrc . .bashrc est un fichier qui exécute les commandes bash . .zshrc est un fichier qui exécute les commandes zsh .

Vous ne pouvez pas vous attendre à ce que zsh puisse exécuter les commandes bash dans votre .bashrc , vous devriez donc le convertir en un nouveau .zshrc au lieu d’essayer d’exécuter .bashrc partir de .zshrc ou de copier le premier dans ce dernier.

Si vous voulez un fichier d’initialisation de shell commun pour tous vos shells; utilisez .profile (et supprimez .bashrc et .zshrc ). Il provient de tous les shells POSIX. Et là, restz fidèle aux fonctionnalités du shell POSIX. Ensuite, ce code s’exécutera dans n’importe quel shell POSIX. (Cependant, je ne suis pas sûr à 100% que zsh est conforme à POSIX).

Voir: http://mywiki.wooledge.org/DotFiles .

Bien que – et je vais d’abord mal interpréter cette partie de votre question – vous ne devriez pas rencontrer d’erreurs de bash lors de l’exécution de .bashrc sauf si vous y mettez des commandes zsh . As tu? Quelles erreurs obtenez-vous? Il me semble que vous avez ajouté du code zsh dans votre .bashrc et que bash (évidemment) ne comprend pas.

En ojblass , ojblass essaie de faire un sharepoint portabilité qui ne réussit que partiellement. zsh est un excellent shell (même si je n’ai pas eu les honneurs moi-même), mais lors de l’écriture de scripts; Je vous recommande de le faire avec #!/usr/bin/env bash place. Surtout juste pour votre propre intérêt (et éventuellement pour les personnes que vous partagez avec eux) en matière de portabilité.