locate / updatedb como ferramenta (Linux CLI) para CDs / DVDs

1

Estou procurando uma ferramenta Linux para procurar arquivos em mídia off-line, como CDs e DVDs. Eu sei que existem muitas ferramentas de "catalogação", mas todas são gráficas e eu quero um programa de linha de comando. O ideal seria se funcionasse exatamente como o conhecido pacote locate / updatedb, com a única exceção de que a atualização do banco de dados teria que ser interativa, para que você possa inserir algum id ou descrição em uma mídia, que será impressa pelo local como ferramenta, por exemplo

$ medialocate foo.png
MEDIA_DVD_01:/pictures/misc/foo.png
MEDIA_DVD_08:/photos/foo.png
MEDIA_DVD_08:/img/bar/foofoo.png

Essa ferramenta existe ainda? Eu não encontrei nada, mas isso provavelmente devido ao fato de que termos como "locale" / "cd" / "arquivos" / "catálogo" são muito comuns para produzir bons resultados. Não seria muito difícil escrever algo assim, mas não quero reinventar a roda aqui.

    
por yogan 21.08.2009 / 21:52

3 respostas

1

Você pode usar o updatedb para fazer com que ele analise os caminhos de mídia removível, basta configurar adequadamente as variáveis de ambiente PRUNEPATHS e PRUNEFS em /etc/updatedb.conf ou equivalente. Embora isso só lembre o caminho, por isso, se você montar no mesmo diretório uma mídia diferente e executar o updatedb, ele sobrescreverá (ou anexará?) Os arquivos.

Você pode solucionar isso montando cada um de seus CDs para ser catalogado em seu próprio diretório, não muito difícil, mas um pouco incômodo.

    
por 21.08.2009 / 21:56
1

Minha solução específica para isso é usar isoinfo do wodim para gerar arquivos em um diretório ~ / dvddb /, com o rótulo do DVD como o nome do arquivo (se você não usar as extensões do RockRidge, altere -lR para -lJ ):

isoinfo -lR -i /dev/scd0 > ~/dvddb/xxx.txt

Depois, para encontrar algum arquivo:

grep -i 'name' ~/dvddb/*

Você pode criar aliases de shell.

    
por 21.08.2009 / 22:08
-1

Eu uso um script de shell ao longo das linhas de:

#!/bin/bash
find $1 -type f -exec xmler.sh {} + > out.xml

Onde xmler cria:

<file>
    <filename>someFilename.txt</filename>
    <md5sum>xxxxxxxxxxxx</md5sum>
    <date_modified>....</date_modified>
</file>

As entradas do arquivo são agrupadas em

<catalogue type="dvd" diskid="someid"></catalogue>

e assim por diante, em um documento XML. Em seguida, posso escrever ferramentas para criar catálogos e índices em HTML, ferramentas de pesquisa e muito mais.

Um pouco hackish, mas funciona para mim.

    
por 21.08.2009 / 21:59