Files
目錄中文件的區別
我有兩個具有相同文件但內容有所不同的目錄。我想列出那些不同的文件。例如
有兩個文件夾 Folder1 和 Folder2,其中包含文件 file1、file2、file3 等。Folder1 的 file2 與 Folder2 的 file2 不同。
所以我的命令應該列出file2。
我怎樣才能做到這一點 ?
您可以將目錄與
diff
:$ diff -qr dirA dirB Only in dirB: file.txt Files dirA/README and dirB/README differ
我確信有專門的工具用於這個目的(
fdupes
我想到)這個簡單的腳本應該可以完成這項工作:#!/usr/bin/env sh if [ "a$1" = a -o "a$2" = a ] then echo Directory name missing. echo Exiting exit 1 fi for i in "$1"/* do filename=$(basename "$i") diff "${1}/${filename}" "${2}/${filename}" > /dev/null 2>&1 if [ "$?" -eq 1 ] then echo "$filename" is different fi done exit 0
你必須有
diff
二進製文件$PATH
(你可能有它)。用法:$ ./diff.sh Folder1 Folder2 7 is different file2 is different