#1 Le 20/05/2013, à 19:30
- ThePico20
Modification de plusieurs lignes dans plusieurs fichiers
Bonjour, j'ai plusieurs fichiers à modifier. Pour me faire comprendre ces fichiers je vais les appeler: 1 et 2.
Alors, je dois modifier la ligne
server-port= (Fichier 1)
remote-control-port= (Fichier 2)
Je ne sais pas comment modifier que une seule ligne. Je n'ai pas dit le numéro de la ligne car il change parfois.
Si vous n'avez pas compris, dite le moi
Hors ligne
#2 Le 20/05/2013, à 20:21
- ljere
Re : Modification de plusieurs lignes dans plusieurs fichiers
je pense que ton prof sera content si tu utilises sed
ancien PC Toshiba satellite_c670d-11 / Linux Mint 21 Vanessa
Nouveau PC ASUS TUF GAMING A17 GPU RTX 4070 CPU AMD Ryzen 9 7940HS w/ Radeon 780M Graphics / Linux Mint 21.2 Victoria / Kernel: 6.4.8-1-liquorix / Desktop: Cinnamon
Hors ligne
#3 Le 20/05/2013, à 20:24
- ThePico20
Re : Modification de plusieurs lignes dans plusieurs fichiers
Ce n'est pas pour mon école Mais je ne comprend pas sed :S Je n'y arrive pas . :S
Hors ligne
#4 Le 20/05/2013, à 20:32
- ljere
Re : Modification de plusieurs lignes dans plusieurs fichiers
alors soit plus explicite car la avec le peu de renseignement que tu donnes je doute qu'on puisse t'aider
ancien PC Toshiba satellite_c670d-11 / Linux Mint 21 Vanessa
Nouveau PC ASUS TUF GAMING A17 GPU RTX 4070 CPU AMD Ryzen 9 7940HS w/ Radeon 780M Graphics / Linux Mint 21.2 Victoria / Kernel: 6.4.8-1-liquorix / Desktop: Cinnamon
Hors ligne
#5 Le 21/05/2013, à 20:51
- ThePico20
Re : Modification de plusieurs lignes dans plusieurs fichiers
J'ai deux fichiers que je doit modifier automatiquement après validation de la commande d'un client. Une fois sa commande validé il faut que plusieurs étapes soit réalisé automatiquement:
-Déziper une archive .zip et la placer dans le dossier qui lui aura un nom aléatoire, ou qui aura le nom du client.
-Modifier un premier fichier dans le dossier racine qui contient le port de son serveur: la ligne: server-port= qui est dans le fichier server.properties
-Modifier un second fichier dans un autre dossier qui contient les ports de configuration du serveur via un panel: la ligne remote-control-port= qui est dans le fichier configuration.yml
Voilà
Hors ligne
#6 Le 22/05/2013, à 13:39
- Michel SIMIAN
Re : Modification de plusieurs lignes dans plusieurs fichiers
Bonjour,
En shell ?
quelque chose du genre :
SERVERPORT=`cat server.properties | grep "server-port=" | cut -f2 -d "="`
REMOTEPORT=`cat configuration.xml | grep "remote-control-port=" | cut -f2 -d "="`
ANCIEN=`cat FICHIER1 | grep "server-port=" | cut -f2 -d "="`
sed -e "s/server-port=$ANCIEN/server-port=$SERVERPORT/" <FICHIER1 >/tmp/FICHIER1
mv /tmp/FICHIER1 FICHIER1
ANCIEN=`cat FICHIER2 | grep "remote-control-port=" | cut -f2 -d "="`
sed -e "s/remote-control-port=$ANCIEN/remote-control-port=$REMOTEPORT/" <FICHIER2 >/tmp/FICHIER2
mv /tmp/FICHIER2 FICHIER2
ça reste à tester, mais l'idée y est, non ?
Hors ligne
#7 Le 22/05/2013, à 13:55
- ljere
Re : Modification de plusieurs lignes dans plusieurs fichiers
oui un petit script dans le genre devrait fonctionner, par contre n'oublie pas de mettre sur la première ligne
#!/bin/bash
ancien PC Toshiba satellite_c670d-11 / Linux Mint 21 Vanessa
Nouveau PC ASUS TUF GAMING A17 GPU RTX 4070 CPU AMD Ryzen 9 7940HS w/ Radeon 780M Graphics / Linux Mint 21.2 Victoria / Kernel: 6.4.8-1-liquorix / Desktop: Cinnamon
Hors ligne