Forum |  HardWare.fr | News | Articles | PC | Prix | S'identifier | S'inscrire | Shop Recherche
933 connectés 

  FORUM HardWare.fr
  Programmation
  Shell/Batch

  La commande sed, problème !

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

La commande sed, problème !

n°1259835
tease_part​y
TT un jour, TT toujours
Posté le 06-12-2005 à 10:18:31  profilanswer
 

Bonjour,
je dois supprimer les cracatère spéciaux d'une ligne, avec la commande sed, mais je n'arrive pas à m'en servir, comment faire exactement ?
 
Exemple:
pass=gugulog=popo
 
Pour que sa donne juste:
gugu
popo
 
C'est sed -e ?

mood
Publicité
Posté le 06-12-2005 à 10:18:31  profilanswer
 

n°1259860
anapajari
s/travail/glanding on hfr/gs;
Posté le 06-12-2005 à 10:59:04  profilanswer
 

Code :
  1. sed -e "s/\=/\n/g"

n°1259863
Sve@r
Posté le 06-12-2005 à 11:03:53  profilanswer
 

anapajari a écrit :

Code :
  1. sed -e "s/\=/\n/g"



[:aloy]sed -e "/pass=//" -e "/log=/\\n/"


Message édité par Sve@r le 06-12-2005 à 11:04:11
n°1259885
tease_part​y
TT un jour, TT toujours
Posté le 06-12-2005 à 11:30:36  profilanswer
 

Parce qu'enfait je dois envoyer les infos d'un QUERY_STRING dans un fichier, puis retirer les infos qui ne vont pas.
 
log=heeeee&pass=ohhhhhh&liste=Prof&send=Envoyer
 
J'arrive bien à envoyer la ligne ci dessus dans le fichier, mais je n'arrive pas à extraire les infos importantes, qui me donnerais:
heeeee  ohhhhhh  Prof
 
voici mon code
echo $QUERY_STRING >> txt/page sed -e 's/log=/ /g' txt/page
?

n°1259891
tease_part​y
TT un jour, TT toujours
Posté le 06-12-2005 à 11:41:53  profilanswer
 

sed -e 's/log=/ /g' -e 's/&pass=/ /g' -e 's/&liste=/ /'g page -e 's/&send=Envoyer/ /g' page
 
OK avec ca, sa fonctionne mais la commande se répète deux fois... :heink:
 
 jj nimp Eleve
 jj nimp Eleve
 heeeee ohhhhhh Prof
 heeeee ohhhhhh Prof
 heeeee ohhhhhh Prof
 jj nimp Eleve                     <- à partir de là...
 jj nimp Eleve
 heeeee ohhhhhh Prof
 heeeee ohhhhhh Prof
 heeeee ohhhhhh Prof

n°1259898
anapajari
s/travail/glanding on hfr/gs;
Posté le 06-12-2005 à 11:55:01  profilanswer
 

tiens même si il y a certainement plus simple moi j'aurais fait comme ça:

Code :
  1. sed -e 's/^/\&/'  -e 's/\&[^=]*=\([^\&]\)/ \1/g'


Doit y avoir moyen de mettre le premier sed dans le deuxieme mais il comprends mal:

Code :
  1. sed -e 's/[^|\&][^=]*=\([^\&]\)/ \1/g'


Message édité par anapajari le 06-12-2005 à 11:55:29
n°1259902
Sve@r
Posté le 06-12-2005 à 12:04:40  profilanswer
 

tease_party a écrit :

Parce qu'enfait je dois envoyer les infos d'un QUERY_STRING dans un fichier, puis retirer les infos qui ne vont pas.
 
log=heeeee&pass=ohhhhhh&liste=Prof&send=Envoyer
 


 
Ah oui, tu récupères les champs d'un formulaire HTML. Tu aurais pu le dire tout de suite, ça aurait simplifié (traitement connu).
En plus, en voyant ton premier post, j'ai pensé "tient, ça ressemble à un formulaire mais il manque les &"...
 
T'as qu'à utiliser "set" avec séparateur "&"
 

#!/bin/sh
 
# On sauvegarde l'IFS
old="$IFS"
 
# On change l'IFS
IFS="&"
 
# On déconcatène QUERY_STRING selon l'IFS
set $QUERY_STRING
 
# On remet l'IFS comme avant et on supprime "old" devenu inutile
IFS="$old"; unset old
 
# C'est fini - On récupère ce qu'on veut
log=$1
pass=$2
liste=$3
send=$4
 
# Si on ne veut récupérer que ce qu'il y a après le "="
log=`echo $1 |cut -f2 -d=`
pass=`echo $2 |cut -f2 -d=`
liste=`echo $3 |cut -f2 -d=`
send=`echo $4 |cut -f2 -d=`


Message édité par Sve@r le 07-12-2005 à 10:50:19

---------------
Vous ne pouvez pas apporter la prospérité au pauvre en la retirant au riche.

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Shell/Batch

  La commande sed, problème !

 

Sujets relatifs
probleme commande rmicProblème avec la commande ISDATE
probleme commande RMIC[access - VB] problème commande
problème en ligne de commandeProblème avec la commande set Path
Problème avec la commande "exec" en PHPProblème entre PHP et la commande rsh
[C] problème avec commande system( )[Java] Problème d'execution avec le jdk1.5.0 (commande java)
Plus de sujets relatifs à : La commande sed, problème !


Copyright © 1997-2018 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR