Modification d'une chaine de caractere

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. Contributeur
    Salut,

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

    1. Modérateur
      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
    2. Contributeur
      Salut,

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

      Et puis grâce à toi, y'a le choix maintenant ;-))
    3. Modérateur
      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 ;-)))
  2. Modérateur
    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.

    1. Un fichier texte de 20Go ? o_O
      Va falloir trouver quelque chose d'efficace.