Sed

Résolu
mousekey -  
 mousekey -
Bonjour,
j'aimerai savoir comment je peux faire en sorte que je puisse changer des caractères d'une chaine de caractère avec la fonction sed....

voici ce que je veux faire...

var="txt"

si la chaine est vrai... changer pour txt1...

et retourner cela dans une variable....

merci
mousekey

4 réponses

SKZ
 
Rien compris au problème.

Si tu veux transformer la première occurence de
txt
dans chaque ligne, tu peux faire :
sed "s/txt/txt1/" fichier
0
mousekey
 
Bonjour,
merci de votre réponse..... dsl pour l'incompréhension..
sed s/$var1/$var2/g fichier.txt > fichier1.txt

var1=xyz var2=TOTO

mousekey
merci
0
SKZ
 
Oupsss !!!
Je pensais que var="txt" apparaissait DANS le fichier à modifier.
(NB : bien vu le /g, j'avais zappé celui là).

Pour les prochaines fois : autant se tutoyer, non ?
0
mousekey
 
Bonjour,
pas de problème pour ce tutoyer... tu as msn...

merci
mousekey
0
mousekey
 
Salut,
j'aimerai savoir si tu connais la variable en ksh qui contient la valeur de la dernière commande... genre $Status=0 si la commande c bien exécuter sinon autre chose....

merci

mousekey
0
SKZ
 
??? Je sais qu'on peut utiliser le code de retour, mais la dernière commande, j'en sais rien...
0
kij_82 Messages postés 4260 Statut Contributeur 857
 
Sous Unix/Linux c'est $$ (si mes souvenir sont bon) pour le statut de la derniere commande effectuée, mais je doute que tu sois sous Unix/Linux sinon tu aurais posé ta question sur le forum adéquat, tout de meme, on ne sais jamais...

;)
0
jipicy Messages postés 41342 Statut Modérateur 4 896
 
Salut,

Sous Unix/Linux c'est $$ (si mes souvenir sont bon)
Perdu ;-))
"$$" renvoie le "PID" du shell.
Pour le code retour de la dernière commande, c'est "$?".
0
mousekey > jipicy Messages postés 41342 Statut Modérateur
 
Bonjour,
merci
mousekey
0
mousekey > jipicy Messages postés 41342 Statut Modérateur
 
Bonjour,
j'aimerai savoir comment je peux faire pour lire une ligne dans un fichier avec la commande sed de cette manière : sed -n 2p fichier.txt et mettre le résultat dans un tableau...
i=0
ls > fichier.txt
tab[$i]=`sed -n 2p fichier.txt`
echo ${tab[$i]}

merci
mousekey
0