Les fichiers

soukaina321 Messages postés 8 Statut Membre -  
soukaina321 Messages postés 8 Statut Membre -
Bonjour , j'ai un fichier qui contient
A.txt
/home/fichier.txt
/home/fichier_a1b0.txt
/home/fichier_a1b1.txt
/home/fichier_a1b2.txt
/home/fichier_a2b1.txt
.
.
etc

En faite je veux une commande qui va me permettre de prendre le fichier qui a la version la plus grande
Est dans ce cas c'est fichier_a2b1.txt
Tout en sachant que je ne connais pas les vesrions
Merci d'avance
>

3 réponses

  1. jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 898
     
    Salut,

    Je suppose que le fichier est généré depuis une commande "ls" ?

    Si oui, voir l'option "-v" de la commande "ls" :

           -v     Trier le contenu des répertoires en fonction de la  version  des
                  fichiers.  Ceci prend en compte le fait que les noms de fichiers
                  utilisent fréquemment des indices ou des numéros de version. Les
                  fonctions de tri standards ne fournissent pas en général l'ordre
                  attendu car les comparaisons ont lieu caractère  par  caractère.
                  Le  tri  de  version  gère  ce problème, et est particulièrement
                  utile lorsque l'on parcourt des répertoires  contenant  de  nom-
                  breux  indices  ou  numéros de version dans les noms de fichier.
                  Par exemple :
                       $ ls -1            $ ls -1v
                       foo.zml-1.gz       foo.zml-1.gz
                       foo.zml-100.gz     foo.zml-12.gz
                       foo.zml-12.gz      foo.zml-25.gz
                       foo.zml-25.gz      foo.zml-100.gz
                  Remarquez que les parties numériques commençant  par  des  zéros
                  sont considérées comme des décimales :
                       $ ls -1            $ ls -1v
                       abc-1.007.tgz      abc-1.007.tgz
                       abc-1.012b.tgz     abc-1.01a.tgz
                       abc-1.01a.tgz      abc-1.012b.tgz
                  (Ceci est une nouveauté des fileutils-4.0).
    0
  2. soukaina321 Messages postés 8 Statut Membre
     
    en faite je sais pas d' ou es ce qu il est généré , je n 'ai en main que le fichier que j'ai cité ci -dessus
    y a il pa autre moyens
    merci d 'avance
    0
  3. xfred
     
    salut,

    ca serais plus facile si tu navais pas d'exention a tes fichiers tu pourais simplement appliquer
    cat fichier_conteneur |sort -ns |tail -1 
    


    dumoin presentement ca te fait une base de travail
    0
    1. soukaina321 Messages postés 8 Statut Membre
       
      salut
      ça marche pas
      0
    2. soukaina321 Messages postés 8 Statut Membre
       
      svp y at'il une commande permettant de supprimer tout les caractere ainsi que les lettre et ne gardant que les chiffre
      c a dire
      je veux que ele fichier suivant
      A.txt
      /home/fichier_a1b0.txt
      /home/fichier_a1b1.txt
      devient


      A.txt
      10
      11
      merci d 'avance
      0
    3. jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 898
       
      Re-

      sed 's/[^[:digit:]]//g'
      0
    4. soukaina321 Messages postés 8 Statut Membre
       
      merci bcp
      en ce qui concerne la solution au problème principal (version)
      dés que je la finalise je vs la transmet
      :)
      0