Problème avec sed sous unix (solaris10)
Résolu
GHISLINO
Messages postés
234
Statut
Membre
-
dubcek Messages postés 19021 Statut Contributeur -
dubcek Messages postés 19021 Statut Contributeur -
Bonjour,
j 'ai un soucis avec sed sous UNIX (solaris 10) mais sous linux ça marche bien
j ai le fichier suivant:
20;7 1 DIOCESE-1 9181 401 612 F03 1 0 0 0 0 0 0 0 0 0 54 255 0 0 0 0 0 0 0 0 0 0 0 0 0
20;7 1 DIOCESE-1 9181 401 612 F03 2 0 0 0 0 0 0 0 0 0 222 1631 0 0 0 0 0 0 0 0 0 0 0 0 0
20;7 1 DIOCESE-1 9181 401 612 F03 3 0 0 0 0 0 0 0 0 0 124 849 0 0 0 0 0 0 0 0 0 0 0 0 0
20;7 1 DIOCESE-1 9181 401 612 F03 4 17 0 584 0 584 0 0 0 584 0 0 0 14 4 0 4 0 0 0 3 14 0 0 0
20;7 2 DIOCESE-2 9182 401 612 F03 1 0 0 0 0 0 0 0 0 0 192 680 0 0 0 0 0 0 0 0 0 0 0 0 0
et je souhaite supprimer les tabulations
mais sous linux la commande marche bien
cat fichier.txt | sed s/'\t'/';'/g
20;7;1;DIOCESE-1;9181;401;612;F03;1;0;0;0;0;0;0;0;0;0;54;255;0;0;0;0;0;0;0;0;0;0;0;0;0
20;7;1;DIOCESE-1;9181;401;612;F03;2;0;0;0;0;0;0;0;0;0;222;1631;0;0;0;0;0;0;0;0;0;0;0;0;0
20;7;1;DIOCESE-1;9181;401;612;F03;3;0;0;0;0;0;0;0;0;0;124;849;0;0;0;0;0;0;0;0;0;0;0;0;0
20;7;1;DIOCESE-1;9181;401;612;F03;4;17;0;584;0;584;0;0;0;584;0;0;0;14;4;0;4;0;0;0;3;14;0;0;0
20;7;2;DIOCESE-2;9182;401;612;F03;1;0;0;0;0;0;0;0;0;0;192;680;0;0;0;0;0;0;0;0;0;0;0;0;0
20;7;2;DIOCESE-2;9182;401;612;F03;2;0;0;0;0;0;0;0;0;0;405;1385;0;0;0;0;0;0;0;0;0;0;0;0;0
20;7;2;DIOCESE-2;9182;401;612;F03;3;66;2;1011;8;1011;8;0;0;1019;0;0;0;48;23;0;23;0;0;0;20;48;1;0;0
Par contre sous linux la commande ne modifie pas le fichier
merci pour votre aide
j 'ai un soucis avec sed sous UNIX (solaris 10) mais sous linux ça marche bien
j ai le fichier suivant:
20;7 1 DIOCESE-1 9181 401 612 F03 1 0 0 0 0 0 0 0 0 0 54 255 0 0 0 0 0 0 0 0 0 0 0 0 0
20;7 1 DIOCESE-1 9181 401 612 F03 2 0 0 0 0 0 0 0 0 0 222 1631 0 0 0 0 0 0 0 0 0 0 0 0 0
20;7 1 DIOCESE-1 9181 401 612 F03 3 0 0 0 0 0 0 0 0 0 124 849 0 0 0 0 0 0 0 0 0 0 0 0 0
20;7 1 DIOCESE-1 9181 401 612 F03 4 17 0 584 0 584 0 0 0 584 0 0 0 14 4 0 4 0 0 0 3 14 0 0 0
20;7 2 DIOCESE-2 9182 401 612 F03 1 0 0 0 0 0 0 0 0 0 192 680 0 0 0 0 0 0 0 0 0 0 0 0 0
et je souhaite supprimer les tabulations
mais sous linux la commande marche bien
cat fichier.txt | sed s/'\t'/';'/g
20;7;1;DIOCESE-1;9181;401;612;F03;1;0;0;0;0;0;0;0;0;0;54;255;0;0;0;0;0;0;0;0;0;0;0;0;0
20;7;1;DIOCESE-1;9181;401;612;F03;2;0;0;0;0;0;0;0;0;0;222;1631;0;0;0;0;0;0;0;0;0;0;0;0;0
20;7;1;DIOCESE-1;9181;401;612;F03;3;0;0;0;0;0;0;0;0;0;124;849;0;0;0;0;0;0;0;0;0;0;0;0;0
20;7;1;DIOCESE-1;9181;401;612;F03;4;17;0;584;0;584;0;0;0;584;0;0;0;14;4;0;4;0;0;0;3;14;0;0;0
20;7;2;DIOCESE-2;9182;401;612;F03;1;0;0;0;0;0;0;0;0;0;192;680;0;0;0;0;0;0;0;0;0;0;0;0;0
20;7;2;DIOCESE-2;9182;401;612;F03;2;0;0;0;0;0;0;0;0;0;405;1385;0;0;0;0;0;0;0;0;0;0;0;0;0
20;7;2;DIOCESE-2;9182;401;612;F03;3;66;2;1011;8;1011;8;0;0;1019;0;0;0;48;23;0;23;0;0;0;20;48;1;0;0
Par contre sous linux la commande ne modifie pas le fichier
merci pour votre aide
A voir également:
- Problème avec sed sous unix (solaris10)
- Sed supprimer ligne - Astuces et Solutions
- Sed - Astuces et Solutions
- Fichier executable unix - Forum MacOS
- Formation ibm aix unix ✓ - Forum Linux / Unix
- Remplacez le mot sed par le mot mais dans tout le texte. combien de caractères contient le document suite à cette modification (en incluant les espaces) ? ✓ - Forum Linux / Unix
8 réponses
Salut,
Es-tu sûr que ce sont bien des tabulations ?
Affiche le résultat de la commande :
N'oublie pas d'encadrer ta commande avec les balises <code></code> (le pictogramme "<>" dans l'éditeur de texte de CCM, afin qu'on voit bien le formatage de ton fichier.
Es-tu sûr que ce sont bien des tabulations ?
Affiche le résultat de la commande :
cat -A ton_fichier
N'oublie pas d'encadrer ta commande avec les balises <code></code> (le pictogramme "<>" dans l'éditeur de texte de CCM, afin qu'on voit bien le formatage de ton fichier.
salut
sous UNIX la commande n 'est pas reconnu
par contre sous Linux
sous UNIX la commande n 'est pas reconnu
cat -A fichier.txt cat: illegal option -- A usage: cat [ -usvtebn ] [-|file] ...
par contre sous Linux
cat -A fichier.txt 20;7^I1^IDIOCESE-1^I9181^I401^I612^IF03^I1^I0^I0^I0^I0^I0^I0^I0^I0^I0^I54^I255^I0^I0^I0^I0^I0^I0^I0^I0^I0^I0^I0^I0^I0$ 20;7^I1^IDIOCESE-1^I9181^I401^I612^IF03^I2^I0^I0^I0^I0^I0^I0^I0^I0^I0^I222^I1631^I0^I0^I0^I0^I0^I0^I0^I0^I0^I0^I0^I0^I0$ 20;7^I1^IDIOCESE-1^I9181^I401^I612^IF03^I3^I0^I0^I0^I0^I0^I0^I0^I0^I0^I124^I849^I0^I0^I0^I0^I0^I0^I0^I0^I0^I0^I0^I0^I0$ 20;7^I1^IDIOCESE-1^I9181^I401^I612^IF03^I4^I17^I0^I584^I0^I584^I0^I0^I0^I584^I0^I0^I0^I14^I4^I0^I4^I0^I0^I0^I3^I14^I0^I0^I0$ 20;7^I2^IDIOCESE-2^I9182^I401^I612^IF03^I1^I0^I0^I0^I0^I0^I0^I0^I0^I0^I192^I680^I0^I0^I0^I0^I0^I0^I0^I0^I0^I0^I0^I0^I0$ 20;7^I2^IDIOCESE-2^I9182^I401^I612^IF03^I2^I0^I0^I0^I0^I0^I0^I0^I0^I0^I405^I1385^I0^I0^I0^I0^I0^I0^I0^I0^I0^I0^I0^I0^I0$
Sous GNU/Linux c'est bien des tabulations.
Par contre c'est sous Solaris qu'il faudrait être sûr ;-\
Essaye avec :
Sinon pour supprimer les espaces essayes avec :
Pour la 1ère expression c'est 2 espaces qu'il y a avant l'astérisque.
Par contre c'est sous Solaris qu'il faudrait être sûr ;-\
Essaye avec :
sed -n l fichier.txtC'est un ELLE minuscule et non pas un UN ou un i majuscule.
Sinon pour supprimer les espaces essayes avec :
sed 's/ */;/g' fichier.txtou
sed 's/\s\+/;/g' fichier.txt
Pour la 1ère expression c'est 2 espaces qu'il y a avant l'astérisque.
salut
merci de trouver ci-dessous les resulats
pour
pas de changement
merci de trouver ci-dessous les resulats
pour
sed -n l fichier.txt 20;7>1>DIOCESE-1>9181>401>612>F03>1>0>0>0>0>0\ >0>0>0>0>54>255>0>0>0>0>0>0>0>0>0>0>0\ >0>0 20;7>1>DIOCESE-1>9181>401>612>F03>2>0>0>0>0>0\ >0>0>0>0>222>1631>0>0>0>0>0>0>0>0>0>0>0\ >0>0 20;7>1>DIOCESE-1>9181>401>612>F03>3>0>0>0>0>0\
sed 's/ */;/g' fichier.txtet
sed 's/\s\+/;/g' fichier.txt
pas de changement
20;7 1 DIOCESE-1 9181 401 612 F03 1 0 0 0 0 0 0 0 0 0 54 255 0 0 0 0 0 0 0 0 0 0 0 0 0 20;7 1 DIOCESE-1 9181 401 612 F03 2 0 0 0 0 0 0 0 0 0 222 1631 0 0 0 0 0 0 0 0 0 0 0 0 0 20;7 1 DIOCESE-1 9181 401 612 F03 3 0 0 0 0 0 0 0 0 0 124 849 0 0 0 0 0 0 0 0 0 0 0 0 0 20;7 1 DIOCESE-1 9181 401 612 F03 4 17 0 584 0 584 0 0 0 584 0 0 0 14
Arf ;-(((
Je ne sais pas à quoi correspond cet affichage 20;7>1>DIOCESE-1, enfin surtout les chevrons ;-((
Quand tu dis "pas de changement " c'est bien de l'affichage à l'écran dont on parle, pas d'un changement direct dans le fichier lui même hein ?
En dernier recours, affiche la sortie de :
Ou bien essaies de mettre un bout de ton fichier sur Cjoint histoire de voir quels sont les caractères qui nous enquiquinent ;-\
Je ne sais pas à quoi correspond cet affichage 20;7>1>DIOCESE-1, enfin surtout les chevrons ;-((
Quand tu dis "pas de changement " c'est bien de l'affichage à l'écran dont on parle, pas d'un changement direct dans le fichier lui même hein ?
En dernier recours, affiche la sortie de :
od -ax fichier.txt
Ou bien essaies de mettre un bout de ton fichier sur Cjoint histoire de voir quels sont les caractères qui nous enquiquinent ;-\
salut
la commande
j'ai joint le fichier ci joint le lien
https://www.cjoint.com/?3DEtOTaX9R5
merci d'avance
la commande
od -axn'est pas reconnu sous UNIX
od -ax fichier.txt
usage: od [-bcCdDfFoOsSvxX] [-] [file] [offset_string]
od [-bcCdDfFoOsSvxX] [-t type_string]... [-A address_base] [-j skip] [-N count] [-] [file...]
j'ai joint le fichier ci joint le lien
https://www.cjoint.com/?3DEtOTaX9R5
merci d'avance
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
salut
le resultat de
par contre la
tu connait l'éditeur awk je pense qu'on peut explorer ce chemin
merci
le resultat de
od -cx fichier.txt
0000000 2 0 ; 7 \t 1 \t D I O C E S E - 1
3230 3b37 0931 0944 494f 4345 5345 2d31
0000020 \t 9 1 8 1 \t 4 0 1 \t 6 1 2 \t F 0
0939 3138 3109 3430 3109 3631 3209 4630
0000040 3 \t 1 \t 0 \t 0 \t 0 \t 0 \t 0 \t 0 \t
3309 3109 3009 3009 3009 3009 3009 3009
0000060 0 \t 0 \t 0 \t 5 4 \t 2 5 5 \t 0 \t 0
3009 3009 3009 3534 0932 3535 0930 0930
0000100 \t 0 \t 0 \t 0 \t 0 \t 0 \t 0 \t 0 \t 0
0930 0930 0930 0930 0930 0930 0930 0930
par contre la
sed 's/\x09/;/g' fichierne fonction toujours pas
20;7 1 DIOCESE-1 9181 401 612 F03 1 0 0 0 0 0 0 0 0 0 54 255 0 0 0 0 0 0 0 0 0 0 0 0 0 20;7 1 DIOCESE-1 9181 401 612 F03 2 0 0 0 0 0 0 0 0 0 222 1631 0 0 0 0 0 0 0 0 0 0 0 0 0 20;7 1 DIOCESE-1 9181 401 612 F03 3 0 0 0 0 0 0 0 0 0 124 849 0 0 0 0 0 0 0 0 0 0 0 0 0 20;7 1 DIOCESE-1 9181 401 612 F03 4 17 0 584 0 584 0 0 0 584 0 0 0 14
tu connait l'éditeur awk je pense qu'on peut explorer ce chemin
merci
salut dubcek
les deux codes fonctionnent très bien,
sincèrement tu es formidable , j'aimerais avoir ton niveau
merci à toi et si tu as des bouquins à me conseiller ça sera la bienvenue.
merci à toi aussi zipe31 pour ta disponibilité.
"je serais le plus heureux de la terre s'il m'arrivait à être l'ami de tout le monde"
les deux codes fonctionnent très bien,
sincèrement tu es formidable , j'aimerais avoir ton niveau
merci à toi et si tu as des bouquins à me conseiller ça sera la bienvenue.
merci à toi aussi zipe31 pour ta disponibilité.
"je serais le plus heureux de la terre s'il m'arrivait à être l'ami de tout le monde"
les bouquins que je recommanderais (et un peu les seuls que je connaisse !!) sont chez O'reilly
http://search.oreilly.com/?q=unix&x=0&y=0
http://search.oreilly.com/?q=unix&x=0&y=0