【问题标题】:File details: size, last modified time, md5 value, path\filename文件详细信息:大小、上次修改时间、md5 值、路径\文件名
【发布时间】:2017-05-19 20:58:36
【问题描述】:

媒体归档。视窗。电源外壳。 (或通过命令行中的 php?)

有什么方法可以为每个文件包含 md5 哈希值?该脚本提供文件大小、上次修改时间、路径\文件名;具有 md5 值会很有用。 (能够轻松处理整个磁盘、100K+ 文件/许多 TB、4K 视频 [大] 文件等(即干净且强大的功能]。)

需要将结果写入 .txt 文件并放入当前工作目录。

Get-ChildItem -Recurse | select Length,LastWriteTime,FullName | Format-Table -Wrap -AutoSize | Out-File filelist.txt

【问题讨论】:

  • 请不要发布要求(您的“应该能够...”部分),就好像您期望为您完成工作一样,只需发布​​您正在尝试做的事情以及您卡在哪里,以便人们可以让您摆脱卡住。

标签: php windows powershell hash md5


【解决方案1】:

如果您使用的是 PowerShell v5(可能是 4?),您可以使用 get-filehash 来计算每个文件的哈希值。然后在 select-object 的计算属性中使用它。

Get-childitem -recurse -file | select-object length,lastwritetime,fullname,@{n="Hash";e={get-filehash -algorithm MD5 -path $_.FullName | Select-object -expandproperty Hash}}

【讨论】:

  • $PSVersionTable.PSVersion Major 5, Minor 1。我按原样尝试了上述建议,但不提供 md5,仅显示长度、LWT、全名。我做错了什么?
  • 作为对照,我尝试了Get-FileHash $pshome\powershell.exe | Format-List,得到了Get-FileHash 中所示的预期结果。那么我对你的脚本做错了什么?
  • get-filehash C:\test.txt -Algorithm SHA384 | Format-List 这也有效。那么问题出在哪里?
  • 谢谢!!!我包含了“Format-Table -Wrap -AutoSize”并更改了列的顺序,现在它是完美的(我假设长路径挡住了 [last] md5 列)。
  • 在您准备好最终的、人类可读的输出之前,请勿使用Format-*。对于您的脚本,我建议您完全不要使用它,而是使用export-csv -notypeinformation 输出到 CSV 文件,以便数据在您的脚本之外可用
猜你喜欢
  • 2019-01-21
  • 2020-12-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-10-13
  • 2021-07-04
相关资源
最近更新 更多