Ignore inaccessible files with creating Checksum

English support forum

Moderators: white, Hacker, petermad, Stefan2

Post Reply
Straces
Junior Member
Junior Member
Posts: 2
Joined: 2020-08-31, 11:20 UTC

Ignore inaccessible files with creating Checksum

Post by *Straces »

Hello,

i need to create Checksum (CRC) of shared files (approx. 100 000 files in many folders). It is easy with Total Commander, but there is problem, that some files (many many) inside the folders are inaccessible for me (i dont need to create chcecksum of this files) and i must everytime click to "Ignore" this files.
Is it possible to somehow set ignore to all unreadable files? Is there exist Comand line parameter? In the settings i cannot find any option for Checksum, only if i want to copy files ("Skip all which cannot be opened for reading"),

Is there is possibility ignore this files once by settings or parameter?
Does anyone advice me?


Thank you

We have licenced version: 9.50 64bit (2020-05-05)
User avatar
Stefan2
Power Member
Power Member
Posts: 4158
Joined: 2007-09-13, 22:20 UTC
Location: Europa

Re: Ignore inaccessible files with creating Checksum

Post by *Stefan2 »

Hi Straces and welcome.

Me guess there is no parameter to skip inaccessible files on creating chcecksums.

But you can create your own command with external command line tools like "fsum".
TC will support you by providing the selected files/folders to your script.
In that script you process each line-by-line (file-by-file) and you may check first is an file is inaccessible or not.


Maybe you will be able to adapt an older script from the forum to your needs, or ask somebody here for help?


 
User avatar
Dalai
Power Member
Power Member
Posts: 9388
Joined: 2005-01-28, 22:17 UTC
Location: Meiningen (Südthüringen)

Re: Ignore inaccessible files with creating Checksum

Post by *Dalai »

There is no way to tell TC so skip inaccessible files when creating checksum files. But I agree with Stefan2 that it's possible with the use of an external tool. There's hashdeep (md5deep), fsum, md5sums and probably others. One can even use a script language like PowerShell or AutoIT to create checksums of various types. Note that not all tools use the same checksum file format, most notably hashdeep. If you're not required to use Windows, you can also leverage the existance of md5sum on every (regular) Linux installation. It also looks like to be possible to "misuse" Windows' CertUtil to create such hashes.

Such tool in conjunction with a script that loops through a list of files should be able to achieve what you want. It's just a question of how much work you want/need to put into it.

Regards
Dalai
#101164 Personal licence
Ryzen 5 2600, 16 GiB RAM, ASUS Prime X370-A, Win7 x64

Plugins: Services2, Startups, CertificateInfo, SignatureInfo, LineBreakInfo - Download-Mirror
Straces
Junior Member
Junior Member
Posts: 2
Joined: 2020-08-31, 11:20 UTC

Re: Ignore inaccessible files with creating Checksum

Post by *Straces »

Thank you,

i tested Powershell with Get-Childitem but there is problem with long path, i tested Robocopy but there was problem it cannot make hash.
I will test some software in inks..
gdpr deleted 6
Power Member
Power Member
Posts: 872
Joined: 2013-09-04, 14:07 UTC

Re: Ignore inaccessible files with creating Checksum

Post by *gdpr deleted 6 »

I do not want to discourage you from chosing a tool specifically made for the job. On the contrary, personally i would rather prefer a tool fitting the job. But i don't know your requirements and circumstances, so if you prefer sticking with Powershell scripting there might be ways to use long paths in a PS script.

Depending on your OS, OS version, and Powershell version, there are different ways you could perhaps make use of long paths in PS. One is a registry setting (available since Windows 10 Anniversary update) that you can enable for long path support. Or, if your OS version is older, you might use the "\\?\" notation for long paths; this requires at least PS 5.1. For details about both approaches, see here: https://stackoverflow.com/a/46309524

If you are stuck with an older PS version or the "\\?\" notation is not to your liking, there is still the AlphaFS library (which aims to be a drop-in replacement for many of .NET's System.IO types with expanded functionality). For details of how to use it in Powershell, see here: https://github.com/alphaleonis/AlphaFS/wiki/PowerShell (since AlphaFS does not offer cmdlets its usage in PS is admittedly somewhat unwieldy)
Post Reply