#1 Le 21/10/2012, à 13:06
- grobs
bash: sed : commande introuvable
Bonjour à toutes et à tous !
Aujourd'hui je suis confronté à un problème étrange. Je souhaite utiliser la commande sed mais lorsque je l'utilise ma jolie Debian me dit qu'il ne connait pas cette commande.
Or elle existe, j'ai les droits d'exécution dessus, et j'arrive à la lancer. Le seul cas où cela ne fonctionne pas, c'est lorsque sed est derrière un pipe ("|")... étrange non ?
grobs@whitelight:/media/WesternDigital1$ ls -l /bin/sed
-rwxr-xr-x 1 root root 65472 17 avril 2010 /bin/sed
grobs@whitelight:/media/WesternDigital1$ ls backup-mysql/ | sed -e 's/.sql.gz//g'
bash: sed : commande introuvable
grobs@whitelight:/media/WesternDigital1$ echo $PATH
/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games
grobs@whitelight:/media/WesternDigital1$ ls backup-mysql/ | /bin/sed -e 's/.sql.gz//g'
bash: /bin/sed: Aucun fichier ou dossier de ce type
grobs@whitelight:/media/WesternDigital1$ file /bin/sed
/bin/sed: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.18, stripped
grobs@whitelight:/media/WesternDigital1$ cat /etc/debian_version
6.0.6
grobs@whitelight:/media/WesternDigital1$ uname -a
Linux whitelight 2.6.32-5-amd64 #1 SMP Sun Sep 23 10:07:46 UTC 2012 x86_64 GNU/Linux
Et le pire, c'est qu'en root ça fonctionne ! La preuve en image :
grobs@whitelight:/media/WesternDigital1$ sudo su
root@whitelight:/media/WesternDigital1# echo "aaa" | sed 's/aaa/bbb/g'
bbb
J'attends vos idées avec impatiences
Merci d'avance.
"Mieux vaut vérifier que les enceintes sont bien branchées avant de recompiler un noyau". (vieux proverbe de Debianneux)
Hors ligne
#2 Le 21/10/2012, à 13:51
- credenhill
Re : bash: sed : commande introuvable
hello
PATH est bien exporté ?
export | grep ' PATH'
Hors ligne
#3 Le 21/10/2012, à 14:26
- grobs
Re : bash: sed : commande introuvable
Oui :
export | grep "PATH"
declare -x PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
Mais en réalité, je viens de me rendre compte que le problème ne vient pas de sed. Apparemment c'est pire que ça :
root@whitelight:/media/WesternDigital1/backup-mysql# echo "CREATE DATABASE test;" | mysql
bash: mysql : commande introuvable
Alors que mysql est fonctionnel sur cette machine... WHAT THE FUCK ?
On dirait que c'est le pipe qui ne réagit pas comme d'habitude. Serait-ce un problème de caractère spécial ? de signaux incorrectes envoyés par le clavier ?...
"Mieux vaut vérifier que les enceintes sont bien branchées avant de recompiler un noyau". (vieux proverbe de Debianneux)
Hors ligne
#4 Le 21/10/2012, à 14:36
- grobs
Re : bash: sed : commande introuvable
Bon, et bien après un redémarrage ça fonctionne de nouveau oO, mais unisquement pour mon user "grobs", root a toujours le même souci.
Infos : cela faisait pas mal de temps que je ne l'avais pas redémarré, j'avais fait pas mal de MAJ, pas mal d'install etc mais je faisais ça avec attention en faisant des checkrestart, en purgeant les packets en état "rc" etc... Et maintenant, je vois avec un cat -v /root/.bash_history qu'il y avait effectivement des caractères spéciaux dans mes commandes :
echo "DROP DATABASE Vehicule;" |M-BM- mysql
Donc le problème est solutionné à moitié mais je n'ai pas compris ce qui s'est passé oO.
Dernière modification par grobs (Le 21/10/2012, à 14:58)
"Mieux vaut vérifier que les enceintes sont bien branchées avant de recompiler un noyau". (vieux proverbe de Debianneux)
Hors ligne