Minhas fotos antigas (Canon G2) são todas JPG, mas quando eu peguei a Nikon D90, eu inicialmente fotografei em JPG, depois mudei para RAW + JPG e agora gostaria de mudar apenas para RAW.
Tenho literalmente milhares de fotos no meu disco rígido. As fotos estão em subdiretórios (por data) em um único diretório chamado Importar.
Estou prestes a importar todas essas fotos para o Lightroom 3.0, no entanto, gostaria de excluir todos os arquivos JPG, mas apenas onde já houver um arquivo RAW correspondente (ou seja, não quero mais manter as versões JPG e RAW da mesma Arquivo).
Se eu puder fazer isso facilmente no Lightroom (depois de importar tudo, incluindo os arquivos JPG duplicados), isso seria ótimo. Também seria bom se houvesse uma maneira fácil de fazer isso antes de importar os arquivos (mas espero que isso não envolva a necessidade de visitar todos os diretórios procurando nomes de arquivos com extensões JPG e NEF).
Alguém conhece uma maneira de fazer isso (no Lightroom, ou com alguma ferramenta / script no Windows)?
Respostas:
No Windows , vá para a pasta e execute isso em um prompt de comando:
Basicamente, ele percorre a pasta atual, executa os arquivos NEF e exclui o JPG, se presente. Ele ignora quaisquer erros se o JPG não estiver lá.
Se você deseja subpastas, inclua
/s
nodir
comandofonte
Aqui está uma versão modificada do script Python de Tomy . Diferenças:
fonte
#!/usr/bin/env python
ao início. Caso contrário, eu tinha erros ImageMagick estranhos (parece meu Mac aberto arquivos .py com ImageMagick).jPg
. Também não funciona quando os arquivos estão no disco externo e no diretório de resíduos, por exemplo, no/home
diretórioAqui está um script Python que move
JPG
arquivos quando nãoRAW
existe um arquivo correspondente . Útil no Mac OS X !fonte
Pelo que entendi, a miniatura no lightroom pode dizer RAW + JPG, mas o JPG não é realmente armazenado ou acessível de forma alguma.
Você também pode escrever um script em lote bastante simples com qualquer linguagem de programação.
fonte
Eu gosto do script bash para OS X (de T.Toivonen ), mas notei que existem alguns problemas.
Não gostou dos nomes dos meus diretórios, que contêm espaços. Isso exigiu um tratamento um pouco diferente do comando find.
O script original funciona apenas para extensões em minúsculas. Eu melhorei um pouco essa parte do script para considerar extensões que também estão em maiúsculas. Observe que ele aceita
DNG+JPG
oudng+jpg
emparelha apenas e ignora quaisquer combinações comoDNG+jpg
ouDnG+JpG
.A solução original propunha apenas um
wastedir
local, enquanto minha correção permite que um subdiretório seja criado em cada ramificação de diretório à medida que ele viaja. Você define um nome do diretório antes do loop.Eu gosto de ver o que está acontecendo, especialmente quando
mv
ourm
comandos são usados;)Por uma questão de espaço que estou mostrando apenas a última parte do script, a partir da criação de uma
basedir
,wastedir
eo loop.fonte
Aqui está uma solução para
bash
(Linux ou Mac OS X). No Windows, você pode instalar o Cygwin para obter uma cópia dobash
.fonte
Aqui está outra
bash
versão usandofind
(Linux). Como na resposta de Ben Pingilley , você pode instalar o Cygwin para obter o bash no Windows.fonte
Aqui está minha opinião sobre esse assunto. Muitas boas idéias vieram de scripts anteriores mencionados aqui.
Este é um script bash para OS X . Ele procura por arquivos que existem com o mesmo nome de arquivo e
dng+jpg
extensões base . Se ajpg
for encontrado exatamente com o mesmo nome quedng
, então esse nome de arquivo será exibido (-e
), o arquivo será movido (-m
) ou excluído (-d
).Ele passará por subpastas, para que você possa usá-lo em todo o catálogo ou apenas em partes dele.
Para outras extensões de arquivo simples, substitua
*.dng
no script a sua extensão preferida.Aviso: você pode ter duas imagens diferentes com o mesmo nome, mas com extensões diferentes. Essas são vítimas inevitáveis deste script.
Veja como usar o script:
O uso básico funcionaria assim:
Isso ecoaria todos os nomes de
jpg
arquivos de arquivos que correspondem aos critérios de ter os doisdng
e osjpg
arquivos com o mesmo nome.O resultado seria algo parecido com isto:
Agora, se eu quiser excluir os arquivos, mudei
-e
para-d
:Ou se eu gostaria de mover os arquivos para / duplicados, eu o executaria
-m
.Agora os
jpg
arquivos duplicados estariam em/Volumes/photo/DNG/2015/duplicates
Aqui está o script: dng-jpg.sh
fonte
Aqui está um
bash
roteiro para o Mac OS X . Ele pode trabalhar em Linux, com algumas alterações.rmtrash
é um utilitário que move os arquivos para a Lixeira, em vez de excluí-los completamente. Você pode obtê-lo no MacPorts assim:Se você quiser evitar isso, basta substituir
rmtrash
no script porrm
, que excluirá imediatamente osJPG
arquivos.fonte
Eu escrevi o seguinte script Python . Comparado com o script de ttaveira , ele faz algum trabalho extra.
fonte
Trabalhando no Mac OS X , faltava uma verificação de sanidade para o "mesmo conteúdo" nas respostas anteriores. Eu tinha nomes duplicados para fotos diferentes porque tinha esquecido de ativar o contador de imagens na minha câmera. Aqui está minha versão, que verifica as informações EXIF pelo mesmo tempo de captura:
Você precisa correr
antes de poder usar o seguinte comando. Foi escrito para comparar
JPG
com osNEF
arquivos da minha Nikon D90. Ajuste as extensões de arquivo de acordo com suas necessidades.sem a verificação de sanidade, tudo se tornaria muito curto:
fonte