Le Terminal ne reconnait pas les commandes !

Fermé
lonnie77 Messages postés 21 Date d'inscription mercredi 23 mars 2011 Statut Membre Dernière intervention 6 avril 2011 - 23 mars 2011 à 15:45
lonnie77 Messages postés 21 Date d'inscription mercredi 23 mars 2011 Statut Membre Dernière intervention 6 avril 2011 - 6 avril 2011 à 21:39
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 21294 Date d'inscription samedi 17 mars 2007 Statut Contributeur Dernière intervention 1 décembre 2024 6 080
Modifié par _Ritchi_ le 1/04/2011 à 08:43
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 mercredi 23 mars 2011 Statut Membre Dernière intervention 6 avril 2011
1 avril 2011 à 09:14
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 21294 Date d'inscription samedi 17 mars 2007 Statut Contributeur Dernière intervention 1 décembre 2024 6 080
Modifié par _Ritchi_ le 1/04/2011 à 18:28
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 mercredi 23 mars 2011 Statut Membre Dernière intervention 6 avril 2011
1 avril 2011 à 19:30
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 21294 Date d'inscription samedi 17 mars 2007 Statut Contributeur Dernière intervention 1 décembre 2024 6 080
1 avril 2011 à 19:46
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 mercredi 23 mars 2011 Statut Membre Dernière intervention 6 avril 2011
1 avril 2011 à 20:01
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 21294 Date d'inscription samedi 17 mars 2007 Statut Contributeur Dernière intervention 1 décembre 2024 6 080
Modifié par _Ritchi_ le 1/04/2011 à 20:05
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 mercredi 23 mars 2011 Statut Membre Dernière intervention 6 avril 2011
1 avril 2011 à 20:08
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 21294 Date d'inscription samedi 17 mars 2007 Statut Contributeur Dernière intervention 1 décembre 2024 6 080
1 avril 2011 à 20:12
Une dernière, histoire de vérifier:
/bin/ls -al .bashrc
0
lonnie77 Messages postés 21 Date d'inscription mercredi 23 mars 2011 Statut Membre Dernière intervention 6 avril 2011
1 avril 2011 à 20:14
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 21294 Date d'inscription samedi 17 mars 2007 Statut Contributeur Dernière intervention 1 décembre 2024 6 080
1 avril 2011 à 20:22
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 mercredi 23 mars 2011 Statut Membre Dernière intervention 6 avril 2011
5 avril 2011 à 14:49
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 21294 Date d'inscription samedi 17 mars 2007 Statut Contributeur Dernière intervention 1 décembre 2024 6 080
Modifié par _Ritchi_ le 7/04/2011 à 07:24
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 mercredi 23 mars 2011 Statut Membre Dernière intervention 6 avril 2011
6 avril 2011 à 09:05
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 21294 Date d'inscription samedi 17 mars 2007 Statut Contributeur Dernière intervention 1 décembre 2024 6 080
6 avril 2011 à 19:00
autant pour moi: "/bin/bash;./.bashrc"
0
lonnie77 Messages postés 21 Date d'inscription mercredi 23 mars 2011 Statut Membre Dernière intervention 6 avril 2011
6 avril 2011 à 21:39
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