Modification d'une chaine de caractere

cyrine -  
lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   -
Bonjour,
J'ai un fichier texte de taille 20Go
ce fichier continet des chaine de caracteres fausse : " à(l "
J'aimerai remplacer le " (" par un espace pour devenir " à l "
Avez vous une idée pour ca svp?

Merci

Cordialemnt

3 réponses

  1. Flachy Joe Messages postés 2303 Statut Membre 261
     
    Un fichier texte de 20Go ? o_O
    Va falloir trouver quelque chose d'efficace.
    0
  2. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
     
    Salut,

    Tu peux toujours essayer (bien sûr je te conseille de faire des tests, voir sauvegarder ton fichier d'origine)

    lami20j@debian-acer:~$ cat plop
    Bonjour,  
    J'ai un fichier texte de taille 20Go 
    ce fichier continet des chaine de caracteres fausse : "   à(l      " 
    à(l dsfdsfdsfdsf à(l
    lami20j@debian-acer:~$ perl -pi -e 's/(?<=à)\((?=l)/ /g' plop
    lami20j@debian-acer:~$ cat plop
    Bonjour,  
    J'ai un fichier texte de taille 20Go 
    ce fichier continet des chaine de caracteres fausse : "   à l      " 
    à l dsfdsfdsfdsf à l


    Le fichier sera lu une seule fois.
    Je pense qu'il te faudra de la mémoire. Si tu as besoin tu peux créer aussi des fichiers swap.

    Tu peux aussi couper ton fichier en plusieurs petits fichiers et ensuite faire le traitement.
    Ensuite tu peux les rassembler.

    0
  3. zipe31 Messages postés 34620 Date d'inscription   Statut Contributeur Dernière intervention   6 501
     
    Salut,

    sed -i.bak 's/(/ /g' fichier_20Go

    0
    1. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
       
      Salut,

      C'est vrai que mon exemple est basé sur à et l mais le tien est radicalement généralisé ;-)
      Peut êre qu'il ne veut pas supprimer toutes les parenthèses.
      D'où je reviens à la base et dire qu'il faut connaître le fichier d'origine ;-)

      En tous cas il va avoir un fichier de 20 Go et un autre de 20 Go - Nbr ( * 1 octet
      0
    2. zipe31 Messages postés 34620 Date d'inscription   Statut Contributeur Dernière intervention   6 501
       
      Salut,

      Ben comme on en sait pas plus, j'ai fait au plus court ;-))

      Et puis grâce à toi, y'a le choix maintenant ;-))
      0
    3. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
       
      Ben comme on en sait pas plus, j'ai fait au plus court ;-))

      On verra, peut être qu'il nous donnera plus de détails.
      Sinon, je suis aussi pour le plus court, par exemple quand quelqu'un d'autre fait à ma place ;-)))
      0