J'utilise le z Shell ( zsh
) au lieu du bash par défaut, et quelque chose ne va pas, de sorte que toutes les commandes qui fonctionnaient auparavant ne sont plus reconnues:
ls
zsh: command not found: ls
open -e .zshrc
zsh: correct 'open' to '_open' [nyae]?
Je ne sais pas comment réinitialiser zsh
ou comment résoudre ce problème. Voici le contenu de la $PATH
variable:
echo $PATH
/Users/Malloc/bin/Sencha/Cmd/3.1.2.342:/usr/local/bin/mate
Je ne peux pas ouvrir le .bash_profile
fichier ni le .zshrc
fichier, il semble que la seule solution soit de réinitialiser le fichier zsh
. Des idées?
ÉDITER:
J'ai même essayé de réinitialiser zsh
comme indiqué dans ce fil , mais j'ai toujours eu une command not found
erreur:
exec zsh
zsh: command not found: zsh
alors que se passe-t-il? pourquoi toutes les commandes sont perdues?
Dans votre fichier de configuration ~ / .zsh, incluez le chemin vers votre fichier de chemin bash qui contient vos alias. Dans mon cas, il incluait la ligne "source ~ / .bash_profile" à l'intérieur de ~ / .zsh.
la source
~/.zsh
dossier. Au lieu de cela, j'ai dû le mettre/etc/zshrc
.Utilisez un bon éditeur de texte comme VS Code et ouvrez votre
.zshrc
fichier (devrait être dans votre répertoire personnel. Si vous ne le voyez pas, assurez-vous de faire un clic droit dans le dossier du fichier lors de l'ouverture et choisissez l'option `` Afficher les fichiers cachés '') .trouver où il dit:
export PATH=a-bunch-of-paths-separated-by-colons:
insérez ceci à la fin de la ligne, avant le guillemet de fin:
:$HOME/.local/bin
Et cela devrait fonctionner pour vous.
Vous pouvez tester si cela fonctionnera en premier en tapant ceci dans votre terminal:
export PATH=$HOME/.local/bin:$PATH
Si l'erreur disparaît après que vous l'avez tapé dans le terminal et que votre terminal fonctionne normalement, la solution ci-dessus fonctionnera. Si ce n'est pas le cas, vous devrez trouver le dossier où se trouve votre erreur de référence (la chose introuvable) et remplacer le PATH ci-dessus par le PATH-TO-THAT-FOLDER.
la source
PATH
réglage. De bash, j'avais l'habitude de préfixer les répertoires dans mon dossier personnel avec~
. Il s'avère donc que pour zsh, je devrais plutôt utiliser la$HOME
variable, comme dans votre exemple.Vous pouvez créer un lien symbolique dans / usr / local / bin /
la source
$HOME
et ne fournissais pas de chemin relatif. L'utilisation du chemin complet avec$HOME
corrigé mon problème.$PATH
est préférable dans ce cas d'utilisation.Pour moi, le simple fait de redémarrer mon terminal semblait résoudre le problème.
la source
J'ai résolu le problème en ouvrant l'onglet général des préférences du terminal et en modifiant la commande (chemin complet)
/bin/bash
par défaut, puis en modifiant le~/.zshrc
fichier.... sans espace entre le
PATH="
et enregistrez le fichier.Après avoir enregistré le fichier, modifiez le
/bin/zsh
dans votre commande ou sélectionnez par défaut... et redémarrez le terminal et votre shell zsh devrait fonctionner à nouveau!
la source
Si vous m'aimez, vous aurez deux applications de terminaux, l'un est le terminal par défaut avec bash comme shell par défaut et un autre iTerm 2 avec zsh comme shell. Pour avoir à la fois les commandes et zsh dans iTerm 2 à partir de bash, vous devez effectuer les opérations suivantes:
Sur iTerm 2, allez dans les préférences (ou la commande,). Ensuite, allez dans l' onglet profil et descendez à la commande . Comme vous pouvez le voir sur l'image ci-dessous, vous devez sélectionner l' option de commande et coller le chemin du shell zsh (pour trouver le chemin, vous pouvez le faire
which zsh
).À ce stade, vous aurez le zsh comme shell par défaut UNIQUEMENT pour iTerm 2 et vous aurez bash comme shell par défaut global sur l'application de terminal mac par défaut. Ensuite, il nous manque toujours les commandes de bash dans zsh. Donc, pour ce faire, vous devez aller sur votre bash (où vos commandes fonctionnent) et obtenir la variable PATH depuis env (utilisez cette commande pour le faire:)
env | grep PATH
.Une fois que vous avez cela, allez sur votre iTerm 2 et collez votre chemin sur l'option "envoyer du texte au démarrage".
Rouvrez simplement iTerm 2 et nous avons terminé!
la source
Ma solution:
Revenir à
bash
:suivant:
copiez ceci:
retour au
zsh
:ouvert
.zshrc
:et collez:
redémarrer le terminal
la source
Dans mon cas, c'est par erreur que le code commenté n'a pas été commenté à la toute première ligne.
Le hachage a été supprimé. Après l'avoir ajouté, il a bien fonctionné.
Je viens de publier ceci ici pour que quelqu'un puisse trouver cela utile. Parce que c'est juste le début de la ligne et pourrait être supprimé par erreur comme je l'avais fait. Et il semble qu'il n'y ait pas de solution après avoir essayé plusieurs façons.
la source
La meilleure solution fonctionne pour moi pour un chemin de changement permanent
Ouvrez Finder-> allez dans le dossier / Users / / usr / local / bin
ouvrir .zshrc avec TextEdit
.zshrc est un fichier caché donc affichez-le par commande + shift +. presse
supprimer le contenu et le type de fichier
export PATH = ~ / usr / bin: / bin: / usr / sbin: / sbin: $ PATH
Et enregistrer
maintenant
zsh: commande introuvable Finie
la source
Le redémarrage du terminal a également fait l'affaire pour moi.
la source
Comme d'autres l'ont dit, il suffit de redémarrer le terminal après avoir effectué les modifications et les modifications que vous avez apportées à votre fichier ~ / .zshrc. Par exemple, après avoir ajouté une fonction pour ouvrir Visual Studio:
J'ai pu utiliser le code du mot-clé pour ouvrir le programme à partir de la ligne de commande.
la source
Un moyen de modifier le fichier .zshrc sans le faire via iTerm2 ou un terminal natif sur macOS consiste à utiliser un terminal dans une autre application. Par exemple, j'ai utilisé le terminal dans le cadre de VSCode et j'ai pu trouver et modifier le fichier.
la source
Désinstaller et réinstaller zsh a fonctionné pour moi:
la source