#!/usr/bin/env bash host=Xiaomi_SDM439-QRD__SN%3AB0796589_c7565cf60006 cd "${0%/*}" set -eux uid=$(id -u) year=${year:-$(date +%Y)} # FIXME: handle previous year on new year if gio mount -l | grep file:///run/media/"$USER"/disk || gio mount file:///run/media/"$USER"/disk then find /run/media/julm/disk/DCIM/ -type f -not -name "IMG_*" -not -name "VID_*" | while read -r file; do #--remove-source-files ext=${file##*.} case $(file --mime-type "$file") in *:\ video/*) prefix=VID;; *:\ image/*) prefix=IMG;; esac # rsync -ai --no-inc-recursive --info=progress2 --inplace --partial out=$(date -r "$file" +"$(dirname "$file")/${prefix}_%Y%m%d_%H%M%S") test "$file" = "$out.$ext" || mv -n "$file" "$out.$ext" || { i=1; while ! mv -n "$file" "${out}_$i.$ext"; do i=$((i+1)); done; } done fi if gio mount -l | grep mtp://"$host" || gio mount mtp://"$host"/"Carte SD SanDisk"/ then mkdir -p "$year"/audio/src test ! -d /run/user/"$uid"/gvfs/mtp:host="$host"/"Espace de stockage interne partagé"/MIUI/sound_recorder || rsync -ai --no-inc-recursive --info=progress2 --inplace --partial \ --remove-source-files \ /run/user/"$uid"/gvfs/mtp:host="$host"/"Espace de stockage interne partagé"/MIUI/sound_recorder \ "$year"/audio/src/ fi mkdir -p "$year"/src for month in {01..12}; do for src in \ /run/media/julm/disk/DCIM/ \ /run/user/"$uid"/gvfs/mtp:host="$host"/"Espace de stockage interne partagé"/DCIM/Camera/ \ /run/user/"$uid"/gvfs/mtp:host="$host"/"Carte SD SanDisk"/DCIM/Camera/ do test ! -e "$src" || find "$src" -type f -name "???_$year$month*" -print0 | rsync -ai0 --no-inc-recursive --info=progress2 --inplace --partial \ --remove-source-files \ --files-from - --no-relative \ / "$year"/src/"$month" done done