Sed et insertion de ligne vide au-dessus dans un fichier
Résolu/Fermé
pcsystemd
Messages postés
702
Date d'inscription
dimanche 27 novembre 2005
Statut
Membre
Dernière intervention
6 novembre 2024
-
1 août 2023 à 11:19
pcsystemd Messages postés 702 Date d'inscription dimanche 27 novembre 2005 Statut Membre Dernière intervention 6 novembre 2024 - 1 août 2023 à 16:13
pcsystemd Messages postés 702 Date d'inscription dimanche 27 novembre 2005 Statut Membre Dernière intervention 6 novembre 2024 - 1 août 2023 à 16:13
A voir également:
- Sed et insertion de ligne vide au-dessus dans un fichier
- Fichier rar - Guide
- Comment ouvrir un fichier epub ? - Guide
- Comment réduire la taille d'un fichier - Guide
- Fichier host - Guide
- Ouvrir un fichier .bin - Guide
4 réponses
jee pee
Messages postés
40453
Date d'inscription
mercredi 2 mai 2007
Statut
Modérateur
Dernière intervention
16 novembre 2024
9 417
Modifié le 1 août 2023 à 15:28
Modifié le 1 août 2023 à 15:28
le \\ est bizarre mais en testant un classique \n (sur un linux lite bash) il ne fonctionnait pas mais dans mon environnement \\ oui
Si au départ tu as 2 fichiers, tu crées un fichier avec une ligne vide et tu concatènes les 3 fichiers
echo -e >vide.txt cat test1.txt vide.txt test2.txt >test3.txt
jee pee
Messages postés
40453
Date d'inscription
mercredi 2 mai 2007
Statut
Modérateur
Dernière intervention
16 novembre 2024
9 417
Modifié le 1 août 2023 à 11:47
Modifié le 1 août 2023 à 11:47
Bonjour,
*********** ajout après
sed '/^WEB27.*/a \\' test.txt
Name|id|lc office
AP|AP|8
ATME|ATME.U|17
BEMS|BEPMS|3
BCI|BCI|937
etc..
WEB27|WEB3|25
Part|N visle|Ce ace
AP|AP|{3241,3178,341,340,551,109,3171,3243}
ATME|ATME.U|{2936,2389,528,3617,6026,669,3185,2376,3938,2819,3431,3173,252,3547,2990,2877,48}
etc..
******** insertion avant
sed '/^Part|N .*/i \\' test.txt
Name|id|lc office
AP|AP|8
ATME|ATME.U|17
BEMS|BEPMS|3
BCI|BCI|937
etc..
WEB27|WEB3|25
Part|N visle|Ce ace
AP|AP|{3241,3178,341,340,551,109,3171,3243}
ATME|ATME.U|{2936,2389,528,3617,6026,669,3185,2376,3938,2819,3431,3173,252,3547,2990,2877,48}
etc..
pcsystemd
Messages postés
702
Date d'inscription
dimanche 27 novembre 2005
Statut
Membre
Dernière intervention
6 novembre 2024
23
1 août 2023 à 13:34
1 août 2023 à 13:34
Merci.
En fait j'ai cela dans mon script bash :
sed -i '1iName|id|lc office' file1.csv | sed -i '1iPart|N visle|Ce ace' file2.csv #Assemble les 2 fichiers en un seul puis insére une ligne vide au dessus de "Part|N visle|Ce ace" et redirection vers un troisième fichier cat file2.csv >> file1.csv | sed -e '/^Part|N .*/i \\' file1.csv > file3.csv
Si je souhaite insérer une ligne vide avant
Part|N visle|Ce ace
uniquement.j' ajoute ce que tu m'indiques dans mon script mais cela ne fonctionne pas.
sed -e '/^Part|N .*/i \\'
Une idée?
pcsystemd
Messages postés
702
Date d'inscription
dimanche 27 novembre 2005
Statut
Membre
Dernière intervention
6 novembre 2024
23
1 août 2023 à 16:13
1 août 2023 à 16:13
Merci, c'est OK.