Я использовал следующую команду для получения хэшей MD5 для всех файлов в каталоге (и всех его подкаталогах):
Get-FileHash -Algorithm MD5 -LiteralPath (Get-ChildItem "*.*" -Recurse)
Однако я понял, что в некоторых подкаталогах есть файлы без расширения.
В чем разница между следующими двумя командами и является ли хорошим способом получить все файлы в каталоге (включая файлы без расширения файла)? Их выходные данные выглядят одинаково для моего тестового каталога, но только первый работает как вход для командлета Get-FileHash
.
Get-ChildItem "*" -Recurse
Get-ChildItem -Recurse | where {!$_.PsIsContainer}
Редактировать: Спасибо, Матиас, оба они работают с Get-FileHash
(включая файлы без расширения файла, а также файлы с квадратными скобками в имени файла):
Get-FileHash -Algorithm MD5 -LiteralPath (Get-ChildItem "*" -Recurse)
Get-ChildItem -Recurse | where {!$_.PsIsContainer} | Get-FileHash -Algorithm MD5