Migrar o Thunderbird 3 pesquisas salvas entre contas

3

Para encurtar a história, os administradores de sistemas me transferiram para um novo servidor de e-mail. No processo, eles precisavam criar uma conta separada no Thunderbird e desativar minha conta antiga. Eles cuidaram de toda a migração de e-mail.

No entanto, minhas pastas de pesquisa salvas não foram incluídas no passeio. Eu tenho mais de 20 pesquisas complexas que eu prefiro não ter que reinserir manualmente à mão. Você não pode arrastar pesquisas salvas entre contas, como outras pastas.

Eu tentei fechar o Thunderbird, fazendo um find / replace em virtualFolders.dat na minha pasta de perfil do Thunderbird, salvando esse arquivo e reabrindo o Thunderbird, mas isso não pareceu fazer nada. Estou assumindo que as pastas de pesquisa também são salvas em um dos bancos de dados sqlite ... alguém sabe onde procurar?

    
por UltraNurd 05.05.2010 / 18:10

2 respostas

2

Algumas notas:

  • O Thunderbird aparentemente não exclui as pesquisas salvas no disco, mesmo depois de excluí-las na interface, por isso minha pasta IMAP do servidor antigo estava cheia de arquivos .msf antigos para as pesquisas que eu não estava mais usando (aproveitei essa oportunidade para não migrar esses)
  • Em algum momento, o Thunderbird mudou sua convenção de nomenclatura de arquivos de "Foo% 20Bar.msf" para "Foo Bar.msf", então eu tinha algumas duplicatas (uma desatualizada) sempre que a migração acontecia (provavelmente Thunderbird 2.x - > 3.x?)
  • No meu caso, tenho minhas pesquisas salvas na visualização de nível superior, não na Caixa de entrada, para que elas sejam exibidas em ImapMail / servidor / saved-search.msf
  • Os arquivos de pesquisa salvos são pequenos, mas contêm referências ao nome do host antigo que preciso encontrar / substituir
  • Depois de migrar os arquivos .msf, verificá-los no Thunderbird e sair, virtualFolders.dat foi atualizado (o que explica porque a edição desse arquivo não fez nada e acabou de ser sobrescrita)

Aqui está o comando que eu executei com o Thunderbird não sendo executado para migrar a pesquisa salva .msfs. Desculpas pelo empacotamento ruim:

find ImapMail/oldserver/*.msf -size -5k -and -not -name "*%20*" -and -not -name "Trash.msf" -print0 | xargs -0 perl -e 'foreach $path (@ARGV) { $path =~ /.*\/([^\/]+)/; $filename = $1; print "sed 's/oldserver/newserver/g' \"$path\" > \"ImapMail/newserver/$filename\"\n"; }' | sh

Observe que os argumentos para find são os mais prováveis de mudar na sua situação; Eu tinha alguns filtros para remover antigas buscas salvas não usadas, mas não excluídas. o filtro em tamanho e ignorar o Trash.msf é necessário apenas porque organizo minhas pesquisas salvas no nível superior com minhas outras pastas não virtuais.

Eu sei que há provavelmente um bajillion de maneiras de fazer esse multifile localizar / substituir e copiar, mas esse método é minha preferência, pois ele lida com nomes de arquivos, e eu posso inspecionar o que está sendo correspondido em cada ponto onde os comandos estão acoplados por um cano.

Você teria que substituir os argumentos do caminho oldserver e newserver na chamada para sed e nos caminhos de entrada e saída. Observe o regex Perl que efetivamente faz um nome de base.

Espero muito que haja uma maneira de fazer isso em algum momento. Eu percebo que este é um caso especial (buscas salvas associadas a uma única conta movendo para uma conta diferente por hostname com estrutura de pastas idênticas), embora ...

    
por 20.05.2010 / 19:24
1

Depois de criar uma pesquisa salva com um nome não-sensitivo (ou seja, algo que não é provável que apareça no meu e-mail), encontrei as seguintes referências no meu diretório de perfil:

De acordo com o artigo mozillaZine do Phantom Folders , o panacea.dat pode ser excluído com segurança e será recriado automaticamente.

Ainda de acordo com essa página, parece que o arquivo .msf é necessário para a pesquisa salva. Tente copiar o arquivo do seu perfil antigo também, e você deve estar pronto.

    
por 16.05.2010 / 18:18