Forum Programmation.shell Question sed

Posté par  .
Étiquettes : aucune
0
2
oct.
2007

Hello cher forum,

Me voici confronté à un mozilla récalcitrant qui a "subrepticement" effacé tout le contenu de la boîte de réception.

Le fichier Inbox présent sur le disque fait environ 1,2 Go (le "dossier" de messagerie n'a jamais été "compacté").

Je voudrais récupérer les messages, et donc, forcer mozilla à recréer le fichier d'index, pour que l'utilisateur puisse faire ensuite du tri et retrouver ses mails.

J'ai vu en [1] qu'il était possible de le faire, en éditant le fichier Inbox, et en changeant le statut des messages, via le header X-Mozilla-Status.

En suivant le lien fourni sur la page en [1] qui mène en [2], j'ai pu voir qu'en fait, lors d'une suppression, la valeur hexa 0x0008 était ajoutée à ce status.

Je cherche donc une expression régulière qui me permettrait simplement de soustraire cette valeur à tous les X-Mozilla-Status. Est-ce possible ? Si oui, comment ?

[1] : http://www.geckozone.org/articles/2006/07/22/120-restaurer-u(…)

[2] : http://lxr.mozilla.org/seamonkey/source/mailnews/base/public(…)

Par avance merci pour votre aide.

P.S. : un grep X-Mozilla-Status: | sort | uniq sur le fichier Inbox concerné me donne les codes suivants :



X-Mozilla-Status: 0000

X-Mozilla-Status: 0001

X-Mozilla-Status: 0009

X-Mozilla-Status: 000b

X-Mozilla-Status: 0011

X-Mozilla-Status: 0019

X-Mozilla-Status: 001b

X-Mozilla-Status: 1001

X-Mozilla-Status: 1009

X-Mozilla-Status: 1019



Le sed ne doit donc intervenir que sur les codes status auxquels la valeur 0x0008 a été ajoutée….

Merci pour l'aide que vous pourrez m'apporter…

  • # simplement ?

    Posté par  . Évalué à 1.

    As tu simplement essayé de :
    - copier ton répertoire"Mail" du profil mozilla ? (il contient entre autres local folders, et un sous répertoire par compte)
    - supprimer le profil dans mozilla + les fichiers dans le répertoire du profil s'il en reste
    - recréer un profil dans mozilla puis fermer mozilla
    - recopier les fichiers d'origine de 1,2 Go dans le bon répertoire
    - relancer mozilla et compacter les dossiers
  • # Résolu....

    Posté par  . Évalué à 2.

    Finalement, j'ai lancé autant de sed qu'il y avait de code de status ayant le bit 0x0008 de positionné pour le supprimer.
    Un peu de calcul binaire/hexa, et tout est rentré dans l'ordre. C'est domage de n'avoir pu dout faire d'une seule passe (je veux dire, avec une regexp qui calcule (c'est possible, ça ?), mais le principal est d'avoir tout récupéré.
    Désolé pour le dérangement....

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.