Commande unix et redirection dans un fichier

Résolu
ronan56 -  
jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,

je voudrais recuperer sous AIX (donc unix) la premier et la dernier ligne de tous les fichiers d'un même repertoire dans un fichier.
La premier et la dernier de chaque fichier ne formant qu"une seule ligne dans le fichier destination.

Un exemple s'impose :
Fichier1.txt :
1111
2222
3333

Fichier2.txt:
4444
5555
6666
7777

resultat :
11113333
44447777

Merci d'avance

3 réponses

  1. jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 898
     
    Salut,
    [tmpfs]$ cat fich1.txt
    1111
    2222
    3333
    [tmpfs]$ cat fich2.txt
    4444
    5555
    6666
    [tmpfs]$ cat fich3.txt
    7777
    8888
    9999
    [tmpfs]$ sed -ns '1x;$ {H;x;s/\n//p}' fich* > final.txt
    [tmpfs]$ cat final.txt
    11113333
    44446666
    77779999
    [tmpfs]$
    ;-))
    0
    1. ronan56
       
      Un grand merci,

      bababa j'aurais mis pas mal de temps à trouver un truc pareil

      A+
      0
  2. jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 898
     
    ;-))
    0
    1. ronan56
       
      par contre il connait pas bien l'option -s

      t'as une idée ?
      Je suis sur du AIX 5.3

      'sed: illegal option -- s
      Usage: sed [-n] Script [File ...]
      sed [-n] [-e Script] ... [-f Script_file] ... [File ...]'

      Merci
      0
  3. jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 898
     
    Ben à ce moment là tu vas être obligé de passer par une boucle :
    for file in *; do cat $file | sed -n '1x;$ {H;x;s/\n//p}' >> final.txt; done
    ;-))
    0