Cmd 让FCIV扫描批处理脚本中的隐藏文件

Cmd 让FCIV扫描批处理脚本中的隐藏文件,cmd,fciv,Cmd,Fciv,我正在尝试使用批处理脚本从机器上散列所有或大部分文件。我认为应该是直截了当的,当然不是因为FCIV不会扫描隐藏的文件。我试图创建一个for循环,该循环将扫描单个文件本身,但在命令行中起作用的内容在批处理文件中不起作用 我将转到驱动器的根目录并尝试以下操作: FCIV -r -both c:\ 然而,我注意到有相当多的文件丢失(甚至作为管理员),其中大部分是隐藏文件 谢谢, 任何帮助都将不胜感激。我将此代码片段用于CertUtil,它可能也适用于FCIV cd /d %targetDir% fo

我正在尝试使用批处理脚本从机器上散列所有或大部分文件。我认为应该是直截了当的,当然不是因为FCIV不会扫描隐藏的文件。我试图创建一个for循环,该循环将扫描单个文件本身,但在命令行中起作用的内容在批处理文件中不起作用

我将转到驱动器的根目录并尝试以下操作:

FCIV -r -both c:\
然而,我注意到有相当多的文件丢失(甚至作为管理员),其中大部分是隐藏文件

谢谢,
任何帮助都将不胜感激。

我将此代码片段用于CertUtil,它可能也适用于FCIV

cd /d %targetDir%
for /r %%e in (*) do (
    if exist "\\?\%%e" (
        FOR /F "tokens=* USEBACKQ" %%F IN (`certutil -hashfile "\\?\%%e" %hashType% ^| findstr /v "certutil hash"`) DO (SET var=%%F)
        echo !var! "%%e" >> %hashDatabaseOutput%
        SET /A fileCount += 1
    ) else (
        echo ERROR 1 - Failed to Hash file, File or Directory contains special characters >> %errorlog%
        echo %%e >> %errorlog%
        echo.>> %errorlog%
    )
)
cd /d "%workingDir%"
我和你有一个类似的问题,我正在扫描C:\中的一些文件,但这些不是隐藏文件

EDIT:使用这个方法似乎没有什么区别,因为即使将文件路径馈送到FCIV,哈希也会失败,因为它找不到文件。你可以看看我的问题

EDIT2:找到了根本原因,这是由于尝试扫描C:\Windows\System32中的文件时重定向引起的。一个人在这里解释得很清楚

由于FCIV只有32位模式,唯一的解决方案是使用其他哈希程序,如64位的rHash