nkwqrwe264556364
V2EX  ›  macOS

MAC 删除重复文件推荐

  •  
  •   nkwqrwe264556364 · Mar 13, 2024 · 4657 views
    This topic created in 965 days ago, the information mentioned may be changed or developed.
    MAC 想要删除某一文件夹里面的重复文件,请问哪个工具好用?在网上搜的多是全盘搜索,想要单独删除某一文件夹里面重复的,不需其它。
    20 replies  •  2024-03-14 13:04:11 +08:00
    Salud
    Salud
    Mar 13, 2024
    1
    这个时候 Python 脚本应该比较顺手了
    wowodavid
    wowodavid
    Mar 13, 2024 via iPhone❤️2
    2
    gpt 写一个脚本就行创建一个 Mac 脚本来删除指定文件夹内的重复文件(保留其中一个副本)可以通过多种方式完成,其中一种有效方式是使用基于哈希值的比较。下面的脚本使用了`bash`和`md5`命令来识别和删除重复的文件。这个脚本只会保留每个文件的一个副本,删除其他所有的重复项。

    请注意,运行此脚本之前,请确保你拥有足够的权限来读取目标文件夹和修改其内容,并且对你想要处理的数据进行备份,以避免意外的数据丢失。使用此脚本时应谨慎行事。

    ```bash
    #!/bin/bash

    # 替换下面的路径为你想要清理的文件夹路径
    TARGET_DIR="/path/to/your/target/directory"

    # 创建一个临时文件,用于存储已经处理过的文件的哈希值
    PROCESSED_HASHES=$(mktemp)

    # 遍历目标目录中的所有文件(不包括目录)
    find "$TARGET_DIR" -type f -print0 | while IFS= read -r -d '' file; do
    # 计算当前文件的 MD5 哈希值
    MD5_HASH=$(md5 -q "$file")

    # 检查这个哈希值是否已经存在于处理过的哈希值中
    if grep -q "$MD5_HASH" "$PROCESSED_HASHES"; then
    # 如果哈希值存在,这意味着我们已经遇到了一个重复的文件,可以删除它
    echo "Deleting duplicate file $file"
    rm "$file"
    else
    # 否则,将这个新的哈希值添加到已处理的哈希值中,保留这个文件
    echo "$MD5_HASH" >> "$PROCESSED_HASHES"
    fi
    done

    # 删除临时文件
    rm "$PROCESSED_HASHES"

    echo "Duplicate files deletion process is completed."
    ```

    如何使用这个脚本:

    1. 打开终端( Terminal )。
    2. 使用`nano`或你喜欢的文本编辑器,创建一个新的脚本文件,例如,你可以命名为`delete_duplicates.sh`。
    3. 复制上面的脚本内容到这个文件中。
    4. 替换`TARGET_DIR="/path/to/your/target/directory"`行中的路径为你想要查找和删除重复文件的目标文件夹。
    5. 保存并关闭文件。
    6. 让脚本具有可执行权限,通过运行`chmod +x delete_duplicates.sh`。
    7. 在终端中运行脚本:`./delete_duplicates.sh`。

    使用这个脚本之前,请确保你完全理解了它的作用,并对你的数据进行了备份。这个脚本会无声地删除文件,只在删除时打印信息。
    wowodavid
    wowodavid
    Mar 13, 2024 via iPhone❤️4
    3
    问题是,apfs 还需要删除重复文件吗?
    print
    print
    Mar 13, 2024
    4
    前几天看到的开源项目 czkawka ,可以试试看,有命令行也有 gui
    kcccc
    kcccc
    Mar 13, 2024
    5
    腾讯有个“柠檬清理”可以清理重复文件,能选择目录。
    Vegetable
    Vegetable
    Mar 13, 2024
    7
    显示所有重复文件 find -type f -exec md5sum {} \;|sort|uniq -w 32 --all-repeated=separate -D
    显示重复文件之一 find -type f -exec md5sum {} \;|sort|uniq -w 32 -d

    删除的话,命令拼接|cut -d ' ' -f 3- | xargs -I {} rm {}

    这么做想保留 1 个删除其他重复的命令还要更复杂的反选一下我不想了
    duxiansen
    duxiansen
    Mar 13, 2024
    8
    @wowodavid 比如两份同样的文档在不同位置,你修改了 A 地方的,等下次用的时候,却不小心用了 B 地方的
    duxiansen
    duxiansen
    Mar 13, 2024
    9
    Gemini 2: The Duplicate Finder
    xz410236056
    xz410236056
    Mar 13, 2024
    10
    腾讯青柠
    xz410236056
    xz410236056
    Mar 13, 2024
    11
    @xz410236056 #10 改名叫柠檬了
    Height
    Height
    Mar 13, 2024 via iPhone
    12
    Duplicate File Finder
    unishare
    unishare
    Mar 13, 2024 via iPhone
    13
    一直在用 Gemini ,可以指定文件夹
    ST0RMTR00PER
    ST0RMTR00PER
    Mar 13, 2024
    14
    Gemini
    maladaxia
    maladaxia
    Mar 13, 2024
    15
    dupeguru
    wclebb
    wclebb
    Mar 13, 2024
    16
    Gemini 吧,不过它是付费。
    MacPaw Way Ltd 出品,如果介意只能看别的了。
    luodan
    luodan
    Mar 14, 2024
    18
    gemini 2 和 duplicate file finder 都是付费软件. 在打折的时候$2,$3 买的
    milo7pupu
    milo7pupu
    Mar 14, 2024
    19
    删完全相同的文件,脚本就可以。如果是想清理相册,可能得用 Gemini 2 了
    MrKrabs
    MrKrabs
    Mar 14, 2024
    20
    @wowodavid 当然需要
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1334 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 46ms · UTC 19:25 · PVG 03:25 · LAX 11:25 · JFK 14:25
    ♥ Do have faith in what you're doing.