小编man*_*ndy的帖子

通过将重复文件与 MD5 进行比较来删除重复文件

我想根据它们的 MD5 值删除重复的文件。我已经在下面找到了脚本,但是如何修改它以使其递归运行?

因此,例如我有包含 3 个子文件夹 A B C 的文件夹

我希望 ./ ./A/ ./B/ ./C/ 中的所有文件检查它们的 md5 并相互比较,如果发现正匹配,则随机删除任一匹配。最终不再存在重复项。我不在乎哪个匹配首先被删除。

我希望我清楚地表达了我需要实现的目标,如果没有,请告诉我:)

#!/bin/bash
while true
do
  echo "Enter the directory:"
  read directory
  if [ -d $directory ]; then
    break
  else
    echo "Invalid directory"
  fi
done

for FILE in `ls $directory`
do
  if [ ! -f $FILE ]; then
    break;
  fi
  h=`md5sum $directory/$FILE | awk '{ print $1 }'`
  for f in `ls $directory`
  do
    if [ -f $f ] && [ $FILE != …
Run Code Online (Sandbox Code Playgroud)

script bash bash-scripting

2
推荐指数
1
解决办法
3329
查看次数

标签 统计

bash ×1

bash-scripting ×1

script ×1