Précédent   Forum des professionnels en informatique > Systèmes > Linux > Système
Système Vos questions autour de l'administration système
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
Vieux 05/02/2010, 11h10   #1
Invité de passage
 
Étudiant
Inscription : juin 2008
Messages : 12
Détails du profil
Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : juin 2008
Messages : 12
Points : 0
Points : 0
Envoyer un message via MSN à tipié
Par défaut [SED]-problème syntaxe sed

Bonjour,
Je travaille sur un script bash et j'aimerai savoir comment, avec les commandes Sed, laisser une ligne vide entre les lignes que je veux enregistrer dans un fichier.
De plus j'aimerai connaitre la syntaxe qui me permettrai d'incrémenter les lignes d'un fichier dans une variable (dans une boucle while), c'est à dire :

$var<"ligne1"
traitements
$var<"ligne2"
traitements
$var<"ligne3"
traitements
.
.
.
etc

Je n'ai pas précisé mon objectif car je ne veux connaitre que la syntaxe
tipié est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/02/2010, 11h24   #2
Invité de passage
 
Étudiant
Inscription : juin 2008
Messages : 12
Détails du profil
Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : juin 2008
Messages : 12
Points : 0
Points : 0
Envoyer un message via MSN à tipié
j'utilise pour le moment echo "\n" >> <nom_fichier> pour sauter des lignes
tipié est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/02/2010, 16h50   #3
Expert Confirmé Sénior
 
Avatar de frp31
 
Homme francois
Ingénieur systèmes et réseaux
Inscription : juillet 2006
Messages : 3 257
Détails du profil
Informations personnelles :
Nom : Homme francois
Âge : 35
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur systèmes et réseaux
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : juillet 2006
Messages : 3 257
Points : 7 039
Points : 7 039
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
francois@francois-laptop:~/boulot$ cat titi
sdfsdf
sfd
sdff
sdf
sdf
sdf
fsd
francois@francois-laptop:~/boulot$ sed 's/$/\n/' titi > toto
francois@francois-laptop:~/boulot$ cat toto
sdfsdf
 
sfd
 
sdff
 
sdf
 
sdf
 
sdf
 
fsd
 
francois@francois-laptop:~/boulot$
pour etre simple c'est remplacer fin_de_ligne par un deuxième_fin_de_ligne
(s pour substitute)

cat -n fichier numérote les lignes il suffit alors de recuperer pour chaque ligne la premiere colone et de la mettre dans ta variable (avec un awk)
ce qui te donne une variable de type string avec chaque numéro de ligne ainsi tu peux indexer ta postition de lecture avec le séparateur "espace" depuis la variable $var pour éviter de la reconstruire à chaque itérations de ta boucle

Code :
1
2
3
4
francois@francois-laptop:~/boulot$ var=$(cat -n  toto | awk '{print $1}' )
francois@francois-laptop:~/boulot$ echo $var
1 2 3 4 5 6 7 8 9 10 11 12 13 14
francois@francois-laptop:~/boulot$
frp31 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +1. Il est actuellement 05h49.


 
 
 
 
Partenaires

Hébergement Web