how to detect corrupted file
frederic chaume
frederic.chaume at gmail.com
Fri Apr 14 11:07:22 BST 2023
Hi Paul
thanks a lot, that will be very useful, I will test it next week
Fyi , I got the options from https://exiv2.org/manpage.html
regards
frederic
Le 14/04/2023 à 05:54, Paul Norman a écrit :
>
> Hi Bob,
>
> Yes file names passed in that way can have unknown things happening
> behind the scenes :-)
>
> PowerShell can help here, but Dos can still do it effectively and
> quickly, as you are working in it, here are some dos shell command
> lines you could try executing.
> (If you find this working, it could be converted into a batch file,
> once any other needed modifications have been worked out later. Note
> that %-s would need to be changed to %% in a .bat batch file.)
>
> I downloaded a working copy of from exiv2 from
> https://exiv2.org/download.html#license
>
> Looks like you got your option commands from(?):
> https://exiv2.org/sample.html
>
> Locally, open a dos prompt up at the top of the directory tree you
> want to explore.
> If all you can see is PowerShell, then when that opens type :-
>
> cmd <Enter>
>
> Again, make sure you are in the top of the directory tree you want to
> explore.
>
> The overall system PATH does not appear to need alteration, as
> exiv2.exe when called directly, appears to find all that it needs
> locally.
> So first set your exiv2.exe file's full location, change the path to
> fit your setup, using quotes especially if you have any spaces in your
> .exe directory path. :-
>
> set exiv2FullPath="G:\utils\exiv2-0.27.6-2019msvc64\bin\exiv2.exe"
>
> And alter the below to your situation (change the *.exts to whatever
> you need, fewer or more, leaving a space between them):
>
> Then execute each of these lines one after the other :-
>
> del results.txt & for /r %i in (*.jpg *.jpeg *.png *.crw *.dng) do
> %exiv2FullPath% "%i" -pp -q >> results.txt
>
> find ": 0 x 0" results.txt > possible_corrupt.txt
>
> notepad results.txt & notepad possible_corrupt.txt
>
> <-- Try the above first, but if necessary, in the second command line
> above, change ": 0 x 0" to whatever is signifying your corrupt file(s)
> as shown in the file: results.txt. Copy and paste the needed text out
> of results.txt between the "quote marks" as I suspect otherwise
> invisible tabs U+0009 could be being used.
>
> Close the notepads: for results.txt and poss_corrupt.txt - when you
> want to run the command again over the same directory tree.
>
> At worst you can scan though the file: results.txt manually in notepad.
>
> N.B.
> Just note that the file: results.txt will get overwritten each time
> you run the main command, so copy or rename it first if you want to
> keep it :-)
>
> Hope that this will help you,
>
> Kindest regards,
> Paul
>
>
> On 14/04/2023 2:16 am, plowmail2010 at gmail.com wrote:
>>
>> Using Windows 7.
>>
>> I could not get wildcards to work in exiv2.
>> The manual says "$ exiv2 *.jpg Prints a summary of the Exif
>> information for all JPEG files in the directory."
>> But that gives me "*.jpg: Failed to open the file".
>>
>> Also, while fiddling with this, the length of exiv2.exe went to 0.
>> Maybe the program got tired of my fiddling, or my computer is about
>> to explode.
>>
>> Bob
>>
>>
>> On 4/13/2023 7:02 AM, frederic chaume wrote:
>>> Hi All
>>>
>>> I found an option using exiv2 under windows
>>>
>>> >bin\exiv2.exe -pp -q P2280067_DxO-corrupted.jpg
>>> Exiv2 exception in print action for file P2280067_DxO-corrupted.jpg:
>>> P2280067_DxO-corrupted.jpg: The file contains data of an unknown
>>> image type
>>>
>>> >bin\exiv2.exe -pp -q P2280067_DxO.jpg
>>> Preview 1: image/jpeg, 317x237 pixels, 17356 bytes
>>>
>>> >bin\exiv2.exe -pp -q .\P2280067.ORF
>>> Preview 1: image/jpeg, 160x120 pixels, 9080 bytes
>>> Preview 2: image/jpeg, 3200x2400 pixels, 1060974 bytes
>>>
>>> I think that could be a good solution to find corrupted jpeg. Based
>>> on this I have some thought
>>> - as exiv2 is native with Digikam, I guess such error could be
>>> visible? *Is there some "debug level" or some logs somewhere that
>>> could report such errors ?*
>>> - I'm not expert on coding so don't know how to translate such
>>> command to a recursive search on a set of folders?
>>> - seems to apply to raw also , but I don't have corrupted raw to
>>> perform the test
>>>
>>> thanks to share your feedbacks and may be other option
>>>
>>> Frederic
>>>
>>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/digikam-users/attachments/20230414/52b7b5bd/attachment-0001.htm>
More information about the Digikam-users
mailing list