Поиск недокачанных изображений
Select messages from
# through # FAQ
[/[Print]\]
Goto page 1, 2, 3, 4, 5  Next  :| |:
Total Commander -> Автоматизация Total Commander

#1: Поиск недокачанных изображений Author: plvtor PostPosted: Wed May 14, 2008 03:51
    —
Как и чем можно произвести поиск "битых" картинок (jpg, gif), по каким критериям можно оценить, что у файла нет конца ?

Если для html достаточным условием будет поиск по /html c опцией "файл НЕ включает".
То для JPG, несмотря на то что у него вроде есть постоянные завершающие символы FF D9 (hex), но в бинарной структире они могут встречаться не только в конце.


Или, если невозможно проделать это стандартным поиском тотала, может есть какие-то утилиты?

#2:  Author: МоторокерLocation: г. Пермь (читается Перьмь) PostPosted: Wed May 14, 2008 15:53
    —
1. При поиске \xFF\xD9$ с включёнными регулярными выражениями вероятность найти битый файл будет больше.

2. Написать контентный плагин для поиска битых файлов.
Будет работать быстрее встроенного поиска, потому как читать будет только конец файла.

#3:  Author: plvtor PostPosted: Sat May 17, 2008 02:09
    —
Поиск по отсутствию FFD9 не полностью все находит, но нашел утилитку для поиска дупликатов картинок, которая еще и проверяет на целосность файлы.

AntiDupl



И еще вопрос по поиску.
Можно ли найти те каталоги в которых НЕ находится определенный файл?

#4:  Author: DrSharkLocation: Kyiv, Ukraine PostPosted: Sat May 17, 2008 13:32
    —
Quote:
И еще вопрос по поиску.
Можно ли найти те каталоги в которых НЕ находится определенный файл?

Всторенными средствами, вроде бы, нет.
Я написал пожелание для плагина DirSizeCalc. Посмотрим, что скажет автор.
Также, думаю, эту задачу можно реализовать с помощью Script content plugin.
EDIT:
Это, вроде, как раз то, что нужно:
http://forum.wincmd.ru/viewtopic.php?t=9139

#5:  Author: Alextp PostPosted: Sat May 17, 2008 17:25
    —
Quote:
Написать контентный плагин для поиска


конт. плагин
уже есть: только поля "это бттое изображение" нет.

А утилитка была бы удобнее

#6:  Author: swr PostPosted: Wed Sep 30, 2009 13:02
    —
AntiDupl опять же не находит все битые изображения, простая проверка, захожу в каталог вижу 2000 изображений, открываю одно любое XnView-ом, перехожу в режим просмотра экскизов, Вид - открытками, XnView начинает к(х)ешировать изображения, и создает открытки (экскизы) только для тех, которые он читает, а нечитаемые просто непоказывает.

В этом же каталоге, создаю папку с произвольным именем, кидаю туда, все отк(х)ешированные XnView-ом файлы, переключаюсь на тотал, и вижу всё, что не смог XnView прочитать, тоесть это наши недокачанные файлы, и тут приходит понимание что AntiDupl не панацея.

#7:  Author: Tol!kLocation: Арзамас PostPosted: Sun Nov 29, 2009 20:23
    —

::::::::::::::::::::::::: jpgtest.cmd :::::::::::::::::::::::::
@echo off &chcp 1251 >nul
setlocal enableextensions

rem Тест с логом JPEG-файлов с ошибками. Используется jpegtran.exe
rem Параметры: /S - тест файлов в подкаталогах
rem Автор: Tol!k
rem Файл jpgerror.txt содержит строки
rem Not a JPEG file:
rem Corrupt JPEG data:
rem Premature end of
rem Empty input file
rem Invalid JPEG file structure:
rem JPEG datastream contains no image

set "jpg=*.jpg *.jpeg *.jpe"
if /i "%1"=="/s" (set "subdir=/s") else set "subdir="
if exist %tmp%\jpgtest.tmp exit /b
dir %jpg% /b %subdir% >%tmp%\jpgtest.tmp

set "err=%~dp0\jpgerror.txt"
if not exist "%err%" (
echo Not a JPEG file:>"%err%"
echo Corrupt JPEG data:>>"%err%"
echo Premature end of>>"%err%"
echo Empty input file>>"%err%"
echo Invalid JPEG file structure:>>"%err%"
echo JPEG datastream contains no image>>"%err%"
)
for /f "delims=" %%f in (%tmp%\jpgtest.tmp) do (
title %%f
jpegtran.exe -optimize "%%f" %tmp%\testtmp.jpg 2>&1|findstr /g:"%err%" &&(
echo %%f &echo.
echo %%f>>jpgerror.lst
)
)
title Done.
del /q %tmp%\testtmp.jpg
if exist jpgerror.lst (
echo JPEG-файлы с ошибками:
type jpgerror.lst |more
) else echo OK.
del /q %tmp%\jpgtest.tmp
pause &exit /b
::::::::::::::::::::::::: jpgtest.cmd :::::::::::::::::::::::::

#8:  Author: aLLigatorLocation: из тех ворот, что и весь народ... PostPosted: Mon Dec 09, 2013 15:09
    —
С поиском по начальному FFD8 и конечному FFD9 тегу JPEG справился с помощью плагина decHEXwdx.
А вот как быть если файл оказался забит нулями в середине файла?

#9:  Author: Skif_off PostPosted: Tue Dec 10, 2013 15:16
    —
aLLigator
А чем вас не устраивает батник чуть выше?

#10:  Author: Mailk PostPosted: Wed Feb 05, 2014 00:29
    —
Была у меня история такая же (востановление инфы после того как туда уже записали). Решил с помощью контекстного плагина по зачитки разрешения и еще чего то. Вопщем битые картинки не показывали инфу и вуаля сортирнул по этой колонки и перенес кривые. После запустил просмотр экскизов и все эти картинки были пустые (чернота). Вот так за 5 минут сортирнул нескольк тысяч картинок причем в разных директориях их было штук 300 (контр+Б).

#11:  Author: Skif_off PostPosted: Wed Feb 05, 2014 16:50
    —
Mailk wrote:
После запустил просмотр экскизов и все эти картинки были пустые (чернота).

Сомнительный критерий, бывают случаи, когда миниатюра цела, а все остальное - битое.
Батник от Tol!k самое оно.

#12:  Author: Skif_off PostPosted: Tue Sep 16, 2014 02:53
    —
У меня по-ходу с лыжами что-то, подскажите, пожалуйста, кнопку для скрипта от Tol!k.

#13:  Author: FlasherLocation: Москва PostPosted: Tue Sep 16, 2014 09:23
    —
Skif_off
На вскидку: убрать путь запуска, положить батник рядом с jpegtran.exe, прописать параметром /S.

#14:  Author: Tol!kLocation: Арзамас PostPosted: Tue Sep 16, 2014 17:38
    —
в пути к %tmp% нет пробелов?
не остался ли неудалённый %tmp%\jpgtest.tmp ?
Quote:
положить батник рядом с jpegtran.exe
надёжнее – в папку, прописанную в %path%

#15:  Author: Skif_off PostPosted: Tue Sep 16, 2014 19:42
    —
Flasher, а путь к файлам как передать? Smile

Tol!k
С %tmp% вроде нет проблем, перед запуском проверял, при необходимости удалял %tmp%\jpgtest.tmp вручную.

Как правильно передать параметры в кнопке? В поле параметров %P%N для одного файла и /S "%P" для рекурсивной обработки пачки, так?
Не срабатывает. Тестовый файл или один из пачки калечил в Hex-редакторе. Точно помню, что работало Smile, даже в теме восстановления инфы на руборде писал, чего не стал бы делать без проверки.
Пара мыслей:
1. Дело в версии jpegtran.exe, который я успел обновить до актуальной везде, где используется. Нагуглил и накачал из разных мест архивы с 2011 по 2014 гг., но пока не проверил. Хотя jpegtran.exe /? штатно срабатывает.
2. Есть вероятность, что дело в WinPE, несколько раз замечал, что батники, пользующие %temp%/%tmp% косячат иногда, как будто не всегда "понимают" где, собственно, находятся переменные или криво раскрываются (%~dp0 в т.ч.), хотя все файлы создавались где должны.



Total Commander -> Автоматизация Total Commander


output generated using printer-friendly topic mod. All times are GMT + 4 Hours

Goto page 1, 2, 3, 4, 5  Next  :| |:
Page 1 of 5

Powered by phpBB © 2001, 2005 phpBB Group