V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
aeroyu
V2EX  ›  Apple

照片管理清理问题请教

  •  
  •   aeroyu · 64 天前 via iPhone · 1278 次点击
    这是一个创建于 64 天前的主题,其中的信息可能已经有所发展或是发生改变。
    目前是使用群晖 photos 来存储照片,手机会自动同步到 nas
    问题:由于是自动同步,会把大量重复相似图片也一起同步过去了,而且手机也删除了部分视频释放空间,现在想整理删除这些无效照片,但因为存在 2 份,不想在 2 端分别处理一次
    想到的方案:把手机图片一次性拷贝到 mac 上,用带有辅助查找相似图片的工具进行标记清理,在把这些标记过的图片用脚本在 nas 再清理一遍

    请教:mac 能否直接读取手机本地文件?不是用 photo 那种,如果不行,可以通过哪些方式先复杂到电脑删除完后,再复制回去手机?或者有更高效的处理方案哈
    11 条回复    2024-09-23 10:17:03 +08:00
    z7356995
        1
    z7356995  
       64 天前 via Android
    同样问题我刚处理好,我是写了一个脚本读取指定文件夹下所有 hash 值,然后写入一个数组,写入前先判断数组中是否存在一样的值,如果有一样的就删除,不一样就写入,脚本不会可以叫 chatgpt 写
    z7356995
        2
    z7356995  
       64 天前 via Android
    我是直接 ssh 到 nas 上运行脚本的
    z7356995
        3
    z7356995  
       64 天前 via Android
    #!/bin/bash

    # 检查是否提供了目录参数
    if [ "$#" -ne 1 ]; then
    echo "使用方法: $0 <directory>"
    exit 1
    fi

    # 获取指定的目录
    target_directory="$1"

    # 检查目录是否存在
    if [ ! -d "$target_directory" ]; then
    echo "错误: 目录不存在: $target_directory"
    exit 1
    fi

    # 定义一个关联数组来存储文件的哈希值
    declare -A file_hashes

    # 遍历指定目录及其子目录中的所有文件
    find "$target_directory" -type f | while read -r file; do
    # 计算文件的哈希值
    hash=$(md5sum "$file" | awk '{ print $1 }')

    # 检查哈希值是否已经存在
    if [[ -n "${file_hashes[$hash]}" ]]; then
    # 如果存在,输出删除信息并删除文件
    echo "删除重复文件: $file"
    rm "$file"
    else
    # 如果不存在,将哈希值添加到数组中
    file_hashes[$hash]="$file"
    fi
    done
    aeroyu
        4
    aeroyu  
    OP
       64 天前 via iPhone
    不是找一样的,这个简单,我意思是会有很多相似但重复的连拍照,mac 上我用 photoswpper 来清
    aeroyu
        5
    aeroyu  
    OP
       64 天前 via iPhone
    photo 只能导入或导出照片,好像无法直接用 mac 来删除手机照片~
    Zaden
        6
    Zaden  
       64 天前 via Android
    Windows 可以用 freefilesync ,手机插 pc ,nas 挂载为 webdav ,就能直接对比了
    jjxtrotter
        7
    jjxtrotter  
       64 天前
    photos 客户端现在提供了新的删除功能,可以选择删除服务器端的照片,也可以选择同时删除
    z7356995
        8
    z7356995  
       64 天前 via Android
    mac 可以挂截 nas 上任意盘,就可以处理了
    aeroyu
        9
    aeroyu  
    OP
       63 天前 via iPhone
    @Zaden 手机插 pc 只能用 itunes 把?好像不能像安卓一样直接挂载成一个目录
    aeroyu
        10
    aeroyu  
    OP
       63 天前 via iPhone
    @jjxtrotter 这个我知道,但这样效率还是很低,要一个个看,如果可以直接挂载目录到 mac ,可以使用一些工具直接扫描相似文件再标记删除
    Zaden
        11
    Zaden  
       63 天前
    @aeroyu #9 可以直接在 pc 里显示为一台终端设备,类似安卓 mtp ,然后 freefilesync 可以选择这台设备里的 dcim 文件夹……不对,我突然想起 iphone dcim 文件夹里有好多子文件夹,照片都在这些子文件夹里,目录结构不同无法比较
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1187 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 18:35 · PVG 02:35 · LAX 10:35 · JFK 13:35
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.