View previous topic :: View next topic |
Author |
Message |
broly Guru


Joined: 21 Feb 2003 Posts: 345 Location: cachan 94
|
Posted: Thu Jul 29, 2004 10:30 am Post subject: [scripts] j'arrive pas a faire un truc (résolu) |
|
|
Bonjour,
je cherche a faire en truc en bash/ksh mais j'y arrive pas
En faite je voudrais simplement chercher une occurence dans un fichier; par exemple /etc/fichier puis si elle existe mettre la ligne de l'occurence trouvée dans un autre fichier genre /etc/passwd mais toujours en AVANT DERNIERE LIGNE.
j'essai avec du sed mais ca marche je suis pas assez calé
Si qq1 peu m'aider svp 
Last edited by broly on Fri Jul 30, 2004 6:26 am; edited 1 time in total |
|
Back to top |
|
 |
Pachacamac Veteran


Joined: 22 Nov 2003 Posts: 1264 Location: Paris - France
|
Posted: Thu Jul 29, 2004 11:10 am Post subject: |
|
|
Tu as grep qui permet de trouver un mot dans une ligne d'un fichier mais pour le mettre en avant dernière ligne je ne sais pas comment tu peux faire, dsl. |
|
Back to top |
|
 |
broly Guru


Joined: 21 Feb 2003 Posts: 345 Location: cachan 94
|
Posted: Thu Jul 29, 2004 12:44 pm Post subject: |
|
|
grep ou ca c bien et facile par contre comment inserer mon resultat dans une ligne ?? |
|
Back to top |
|
 |
yoyo Bodhisattva


Joined: 04 Mar 2003 Posts: 4273 Location: Lyon - France
|
Posted: Thu Jul 29, 2004 12:49 pm Post subject: |
|
|
AMHA, le plus simple serait de découper ton fichier en deux (avec split par exemple) puis d'ajouter la ligne que tu veux (avec ">>") à la fin du premier fichier obtenu avec split et d'ajouter (toujours à la fin et toujours avec ">>") le deuxième fichier obtenu avec split pour retrouver ton fichier complet(é).
Il est sûrement possible (avec sed ou autre) de le faire directement mais je fais avec mes compétences limitées ...
EDIT : 1ère explication manquant de clarté => correction. _________________ La connaissance s'accroît quand on la partage.
JCB
Last edited by yoyo on Thu Jul 29, 2004 1:07 pm; edited 1 time in total |
|
Back to top |
|
 |
Pachacamac Veteran


Joined: 22 Nov 2003 Posts: 1264 Location: Paris - France
|
Posted: Thu Jul 29, 2004 12:58 pm Post subject: |
|
|
Ah oué futé le yoyo !
Par contre j'aurai dit ajouter la ligne à la fin et non pas au début.
Avec >> tu ajoute la ligne a la fin de ton 1er fichier et ensuite tu refais le contraire avec ton 2ème fichier.
M'enfin si quelqu'un à l'astuce avec sed il est le bienvenu  |
|
Back to top |
|
 |
yoyo Bodhisattva


Joined: 04 Mar 2003 Posts: 4273 Location: Lyon - France
|
Posted: Thu Jul 29, 2004 1:04 pm Post subject: |
|
|
Pachacamac wrote: | Ah oué futé le yoyo !
Par contre j'aurai dit ajouter la ligne à la fin et non pas au début.
Avec >> tu ajoute la ligne a la fin de ton 1er fichier et ensuite tu refais le contraire avec ton 2ème fichier.
M'enfin si quelqu'un à l'astuce avec sed il est le bienvenu  |
Je pense qu'on s'est mal compris car il me semble qu'on fait la même chose ... WERBER quand tu nous tiens !!!
(enfin je viens de me relire et je me serais plutôt mal exprimé ; je corrige ça de suite) _________________ La connaissance s'accroît quand on la partage.
JCB |
|
Back to top |
|
 |
arlequin l33t


Joined: 16 Nov 2002 Posts: 707 Location: grep $USER /etc/passwd | cut -d':' -f6
|
Posted: Thu Jul 29, 2004 1:05 pm Post subject: |
|
|
Sans vouloir faire mon goret, tu peux aussi utiliser ça :
Code: | head -n $((`wc -l monfichier.txt | tr -s ' ' | cut -d' ' -f1` - 1)) monfichier.txt |
qui compte le nombre de ligne dans le fichier, lui retranche un et la passe par head. Là, tu te retrouve avec avec toutes les lignes de ton fichier, sauf la dernière.
Après, tu insères ta ligne, et tu passes par un
Code: | tail -n 1 monfichier.txt |
pour récupérer la dernière ligne de ton fichier d'origine.
En collant ces trois parties, tu obtients ce que tu cherches à faire  _________________ J'vous dis ciao !
Au fait, ciao ça veut dire bye en anglais. |
|
Back to top |
|
 |
Pachacamac Veteran


Joined: 22 Nov 2003 Posts: 1264 Location: Paris - France
|
Posted: Thu Jul 29, 2004 1:18 pm Post subject: |
|
|
simple ! mdr
Comme quoi on en apprend tous les jours. |
|
Back to top |
|
 |
broly Guru


Joined: 21 Feb 2003 Posts: 345 Location: cachan 94
|
Posted: Fri Jul 30, 2004 6:26 am Post subject: |
|
|
ok merci pour vos reponses !!  |
|
Back to top |
|
 |
|