Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 05/11/2018, à 20:22

aymenoss

modifier données dans des fichiers scripts avec un script shell ?

j'ai besoin de changer un chemin "hello/world/text.txt" dans un fichier .sh.
je peux utliser la methode sed -i pour remplacer un ligne entier.
sed -i "/2/c hello world" text.sh
mais pour le chemins comment je peux le declarer.
merci

Dernière modification par aymenoss (Le 05/11/2018, à 20:47)

Hors ligne

#2 Le 05/11/2018, à 20:33

melixgaro

Re : modifier données dans des fichiers scripts avec un script shell ?

salut,
La commande sed ne modifie pas le fichier (sauf si on le lui demande) mais retourne le résultat sur la sortie standard. Une lecture du manuel  avec

man sed

te montrera qu'il faut utiliser l'option -i pour appliquer les modifs (sois sûr/e de toi, il n'y aura pas de retour en arrière possible !).

Tu es sûr/e d'avoir besoin de sudo ?


Linux depuis ~2007. Xubuntu seulement.

Hors ligne

#3 Le 05/11/2018, à 20:34

diesel

Re : modifier données dans des fichiers scripts avec un script shell ?

il te faut faire un sed -i

Amicalement.

Jean-Marie

P.S. Zut !, grillé par melixgaro

Dernière modification par diesel (Le 05/11/2018, à 20:49)


Je déteste qu'on cherche à me faire passer pour un con, j'y arrive déjà très bien tout seul.
Le mort, il sait pas qu'il est mort ; c'est pour les autres que c'est dur.................... Pour les cons, c'est pareil.

Hors ligne

#4 Le 05/11/2018, à 20:49

aymenoss

Re : modifier données dans des fichiers scripts avec un script shell ?

pour le chemin comment je peux  l'integrer avec sed?
hello/world/text1.sh

Hors ligne

#5 Le 05/11/2018, à 20:50

diesel

Re : modifier données dans des fichiers scripts avec un script shell ?

Comprends pas. Ce chemin, tu veux qu'il soit dans ton fichier script ou c'est juste pour désigner ton fichier script ?

Amicalement.

Jean-Marie

Dernière modification par diesel (Le 05/11/2018, à 20:54)


Je déteste qu'on cherche à me faire passer pour un con, j'y arrive déjà très bien tout seul.
Le mort, il sait pas qu'il est mort ; c'est pour les autres que c'est dur.................... Pour les cons, c'est pareil.

Hors ligne

#6 Le 05/11/2018, à 21:25

aymenoss

Re : modifier données dans des fichiers scripts avec un script shell ?

je veux qu'il soit dans mon fichier script

Hors ligne

#7 Le 05/11/2018, à 21:33

Watael

Re : modifier données dans des fichiers scripts avec un script shell ?

te montrera qu'il faut utiliser l'option -i pour appliquer les modifs (sois sûr/e de toi, il n'y aura pas de retour en arrière possible !).

l'option -i de GNU sed accepte un argument qui sera utiliser comme extension d'une sauvegarde du fichier original (avant modification).

pour utiliser des chemins avec sed, il faut remplacer le séparateur / par n'importe quel caractère qui n'apparaît pas dans les expressions :

sed 's@/chemin/vers/...@/remplacement/vers/...@
sed '\@/chemin/vers/...@{commandes}'

Dernière modification par Watael (Le 05/11/2018, à 21:46)


Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#8 Le 05/11/2018, à 21:39

melixgaro

Re : modifier données dans des fichiers scripts avec un script shell ?

ah watael, je voulais inciter le demandeur à jeter un œil au man et il ou elle aurait vu qu'on pouvait faire une sauvegarde du fichier et le modifier en un seul coup… big_smile


Linux depuis ~2007. Xubuntu seulement.

Hors ligne

#9 Le 05/11/2018, à 21:45

Watael

Re : modifier données dans des fichiers scripts avec un script shell ?

alors, il fallait teaser : « RTFM! -i n'est peut-être pas irrémédiable... » wink


Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#10 Le 05/11/2018, à 22:41

aymenoss

Re : modifier données dans des fichiers scripts avec un script shell ?

merci watael, c'est très gentille, tu es le meilleur.

Hors ligne