Le Terminal ne reconnait pas les commandes !

lonnie77 Messages postés 21 Date d'inscription   Statut Membre Dernière intervention   -  
lonnie77 Messages postés 21 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour à tous,

Ce matin encore mon terminal fonctionnait et maintenant il ne reconnait plus aucune commande! help me please !

voici une illustration:

MacBook-Pro-de-Wilson:~ demo$ ssh
-bash: ssh: command not found
MacBook-Pro-de-Wilson:~ demo$ ls
-bash: ls: command not found
MacBook-Pro-de-Wilson:~ demo$ vi
-bash: vi: command not found
MacBook-Pro-de-Wilson:~ demo$ cat
-bash: cat: command not found

Merci d'avance !!

35 réponses

_Ritchi_ Messages postés 21333 Date d'inscription   Statut Contributeur Dernière intervention   6 104
 
Pas étonnant que cela ne marche pas : le fichier est sauvegardé en format RTF (Rich Text Format qui inclus la description des police, des couleurs, etc.). J'ai omis ce détail dans ma recette initiale. Désolé!

On va recommencer la création de ce fichier .bashrc afin de virer le bazar RTF et ne garder que ceci:
export PATH=/bin:/sbin:/usr/bin:/usr/sbin:$PATH

Lance TextEdit puis ouvre ses préférences.
Dans l'onglet "Nouveau Document": coche "Format Texte" et ferme les préférences.
Lance le menu "Fichier -> Nouveau
Copie/Colle notre fameuse instruction:
export PATH=/bin:/sbin:/usr/bin:/usr/sbin:$PATH  

Lance le menu "Fichier -> Sauvegarder":
- Enregistrer sous : bashrc.txt
- Emplacement : cliquer sur la petite maison dans la colonne de gauche
- Encodage format texte: Unicode (UTF-8)
- Enregistrer

Lance le Terminal
Exécute la commande de renommage suivante:
/bin/mv bashrc.txt  .bashrc


Pour confirmer que l'on a bien réussi à créer notre fichier, lance et vérifie qu'il ne contient que notre fameuse instruction:
/usr/bin/more .bashrc


Si c'est OK, relance le Terminal et vérifie que les commandes désirées sont OK (ls, cat, ssh, ...) et pense à remettre les préférences de TextEdit comme elles étaient avant qu'on les modifie.

Ritchi
PS1: question de curiosité, et comme toute question de curiosité, la réponse n'est pas obligatoire.
Pourquoi désires-tu utiliser le Terminal et quelles sont tes connaissances en Shell ?

PS2: j'ai remis à jour la recette
0
lonnie77 Messages postés 21 Date d'inscription   Statut Membre Dernière intervention  
 
boonjour ritchi,

Merci beaucoup pour cette recette !

Tout fonctionne par contre, quand je redémarre le Terminal, il faut absolument que je rentre la commande:
export PATH=/bin:/sbin:/usr/bin:/usr/sbin:$PATH 
pour retrouver mes commandes, serait-il possible que cela se fasse automatiquement ?

PS1: Pour te répondre je suis en alternance en informatique et je dois installer Trac et OCS inventory pour la gestion du parc informatique de la boite qui est situé sur un serveur Ubuntu.

Si cela ne te dérange pas aurais-tu un mail pour te joindre plus facilement si besoin ai.. je ne veux pas non plus être trop envahissant !
0
_Ritchi_ Messages postés 21333 Date d'inscription   Statut Contributeur Dernière intervention   6 104
 
Il se peut que ton Terminal ne soit pas configuré pour lancer le shell nommé bash mais plutôt le tcsh. C'est pourquoi je t'avais demandé (voir ici) de me copier /coller le résultat de la commande suivante:
/usr/bin/env
ou celle-ci:
/usr/bin/env | /usr/bin/grep -i shell


La variable d'environnement qui m'intéresse est nommée SHELL: selon sa valeur, on avisera.
0
lonnie77 Messages postés 21 Date d'inscription   Statut Membre Dernière intervention  
 
alors la commande
 /usr/bin/env
me donne :

MacBook-Pro-de-Wilson:~ demo$ /usr/bin/env
TERM_PROGRAM=Apple_Terminal
TERM=xterm-color
SHELL=/bin/bash
TMPDIR=/var/folders/n2/n2A3yp7ZEKasMeOyPedxTk+++TI/-Tmp-/
Apple_PubSub_Socket_Render=/tmp/launch-5S3PBb/Render
TERM_PROGRAM_VERSION=273.1
USER=demo
COMMAND_MODE=unix2003
SSH_AUTH_SOCK=/tmp/launch-wkkUYK/Listeners
__CF_USER_TEXT_ENCODING=0x1F5:0:91

PATH=/opt/local/bin:/opt/local/sbin:/opt/local/bin:/opt/local/sbin:/Library/Frameworks/Python.framework/Versions/2.7/bin:"/usr/local/bin:/usr/local/sbin:/usr/local/mysql/bin:??
PWD=/Users/demo
LANG=fr_FR.UTF-8
SHLVL=1
HOME=/Users/demo
LOGNAME=demo
DISPLAY=/tmp/launch-dU4Ky0/org.macosforge.xquartz:0
_=/usr/bin/env


et celle ci
/usr/bin/env | /usr/bin/grep -i shell
:

MacBook-Pro-de-Wilson:~ demo$ /usr/bin/env | /usr/bin/grep -i shell
SHELL=/bin/bash
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
_Ritchi_ Messages postés 21333 Date d'inscription   Statut Contributeur Dernière intervention   6 104
 
Donc tu es bien en bash shell comme indiquée par la variable d'environnement SHELL. Je te propose alors de lancer la commande qui suit afin que notre fichier .bashrc soit lu à chaque lancement du Terminal:
/bin/chmod +x .bashrc



Ritchi
0
lonnie77 Messages postés 21 Date d'inscription   Statut Membre Dernière intervention  
 
j'ai bien lancé la commande
/bin/chmod +x .bashrc
mais toujours pas de lancement automatique, seule la commande export
PATH=/bin:/sbin:/usr/bin:/usr/sbin:$PATH
me permet de récupérer mes commandes
0
_Ritchi_ Messages postés 21333 Date d'inscription   Statut Contributeur Dernière intervention   6 104
 
Je ne comprends plus!
Montre moi à quoi ressemble ton fichier .bashrc en lançant ceci:
/usr/bin/more .bashrc
0
lonnie77 Messages postés 21 Date d'inscription   Statut Membre Dernière intervention  
 
voici mon fichier .bashrc :

MacBook-Pro-de-Wilson:~ demo$ /usr/bin/more .bashrc
export PATH=/bin:/sbin:/usr/bin:/usr/sbin:$PATH  
0
_Ritchi_ Messages postés 21333 Date d'inscription   Statut Contributeur Dernière intervention   6 104
 
Une dernière, histoire de vérifier:
/bin/ls -al .bashrc
0
lonnie77 Messages postés 21 Date d'inscription   Statut Membre Dernière intervention  
 
le résultat:

MacBook-Pro-de-Wilson:~ demo$ /bin/ls -al .bashrc
-rwxr-xr-x@ 1 demo  staff  49  1 avr 09:02 .bashrc
0
_Ritchi_ Messages postés 21333 Date d'inscription   Statut Contributeur Dernière intervention   6 104
 
Tout est OK et donc cela devrait le faire!
Ce doit être ces foutus points d'interrogation à la fin de ton PATH qui doivent mettre le bazar.
Il faudrait savoir quel est le fichier mal écrit qui les introduit dans ton PATH.
Pour cela, il faudrait faire une recherche grâce à la commande grep mais à expliquer à distance c'est difficile.

Une solution radicale serait de réinstaller le système...
Je te laisse et à demain pour la suite

Ritchi
0
lonnie77 Messages postés 21 Date d'inscription   Statut Membre Dernière intervention  
 
bonjour Ritchi !

J'ai donc bien récupérer toutes les commandes et leurs fonctionnalités mais c'est uniquement en rentrant la commande:

export PATH=/bin:/sbin:/usr/bin:/usr/sbin:$PATH


Après chaque ouverture du terminale, si je ne le fais pas, "command not found" refais apparition.

Peut-etre aurais-tu la solution à ce problème ?
0
_Ritchi_ Messages postés 21333 Date d'inscription   Statut Contributeur Dernière intervention   6 104
 
Bonjour,

C'est vraiment étrange ton soucis car :
- nous avons vu que ton shell était le bash (cf la variable d'environnement "SHELL=/bin/bash")
- nous avons donc créé le fichier de configuration .bashrc contenant le fameux export
- nous avons rendu exécutable ce fichier (commande "/bin/chmod +x .bashrc")
Donc logiquement, tout devrait être OK.

Essayons quand même une ultime manoeuvre:
- Lance le Terminal
- Ouvre le menu Préférences
- Sélectionne "Réglages" puis "Shell"
- Coche "Exécuter la commande" et tape "/bin/bash;./.bashrc" (sans les guillements) dans la zone de saisie associée
- Referme la fenêtre de préférences
- Relance Terminal et teste si cela va mieux.

Ritchi
0
lonnie77 Messages postés 21 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour,

Alors après avoir effectuer tous ça, voici ce que j'obtiens:


Last login: Wed Apr  6 09:04:29 on ttys000
-bash: grep: command not found
MacBook-Pro-de-Wilson:~ demo$ bash;./.bashrc
-bash: bash: command not found
MacBook-Pro-de-Wilson:~ demo$ 
0
_Ritchi_ Messages postés 21333 Date d'inscription   Statut Contributeur Dernière intervention   6 104
 
autant pour moi: "/bin/bash;./.bashrc"
0
lonnie77 Messages postés 21 Date d'inscription   Statut Membre Dernière intervention  
 
Bonsoir, voici donc le resultat:


Last login: Wed Apr  6 21:37:54 on ttys000
-bash: grep: command not found
new-host-2:~ demo$ /bin/bash;./.bashrc
bash-3.2$ 
0