actually batch is called like this:
c:\>md5.bat HEX file.txt
Where %1 points to a label and %2 feeds the perl one-liner the file name. Here is the batch code:
@echo off
goto %1
goto END
:BASE64
echo Digesting %2
d:\perl\bin\perl.exe -MDigest::MD5 -e "open(FH,shift);print Digest::MD
+5->new->addfile(FH)->b64digest" %2
goto END
:BIN
d:\perl\bin\perl.exe -MDigest::MD5 -e "open(FH,shift);print Digest::MD
+5->new->addfile(FH)->digest" %2
goto END
:HEX
d:\perl\bin\perl.exe -MDigest::MD5 -e "open(FH,shift);print Digest::MD
+5->new->addfile(FH)->hexdigest" %2
goto END
:END
echo.
echo Bye
And the one-liner is executed:
d:\perl\bin\perl.exe -MDigest::MD5 -e "open(FH,shift);print Digest::MD5->new->addfile(FH)->hexdigest" file.txt
No space in the file name. It works every time, it's just that the hash is
different for each method.
Note:they are consistent in their disagreement.
Here is the HEX output for the .bat method:
b2dac3151aa297fe172ee847b9317c31
Here is the output from the perl one liner run at the command line:
7b3c4b4d258a62aa54821ad9e4cbfc05
Thanks for the help!
humbly,
novitiate
"...goodnight you princes of main(e)"  --The Cider House Rules