Files

列出所有文件的命令行工具,包括屬性和校驗和

  • February 15, 2014

這個用於 MsWindows 的命令行工具列出了所有文件,包括屬性和校驗和。

http://www.jam-software.de/filelist/

有沒有等價的unix?

ps:我知道我可以做一個簡單的腳本來實現這一點;然而,這個問題是關於找到一個已經實現的工具。再次,請不要告訴我如何自己實現這一點。如果這樣的工具尚不存在,我會這樣做。


更新

我終於同意 lain 和 lVlint67 的評論,即實現我自己的腳本是可以的(即使目前腳本存在一些極端情況):

數據統計

#! /bin/bash

if [ -z "$1" ] ; then
 echo "dstat <file>"
 exit 1
fi

HASH="                                "
if [ -f "$1" ] ; then
 HASH=`md5 -q "$1"`
fi

FILENAME=$(basename "$1")
EXT="${FILENAME##*.}"

FILENAME_ESCAPED=$(echo $FILENAME | sed -e "s/%/%%/g")
EXT_ESCAPED=$(echo $EXT | sed -e "s/%/%%/g")

stat -t "%F %T" -f "%HT%t%Sp%t%Su%t%Sg%t%Sm%t%SB%t%14z%t$HASH%t$FILENAME_ESCAPED%t%SY%t$EXT_ESCAPED%t%N" "$1"

使用如下:

$ find . -exec dstat {} \;

我得到一個結果,例如:

Regular File    -rw-r--r--      david   staff   2013-11-09 01:33:24     2013-11-09 01:33:24              14787  c3a7afd9e3cf89543352ee58e26cfb10        Invoice_41010102336895558_6601081486112013.pdf          pdf     ./accounting/files/Invoice_41010102336895557_6601081486112013.pdf
Regular File    -rw-r--r--      david   staff   2013-09-01 00:41:05     2013-09-01 00:41:05              13636  55b47d2a41d5d6a072439ef2dabacac4        Invoice_41010102336895558_6601108809092013.pdf          pdf     ./accounting/files/Invoice_41010102336895557_6601108809092013.pdf
...

如果您的系統有正常的 GNU 工具,我不會費心安裝一些隨機的第三方軟體……只需部署以下內容:

alias filelist='find ./ -type f -exec ls -la {} \; -exec md5sum {}  \;'
cd /tmp; filelist

引用自:https://serverfault.com/questions/574761