Выполнение любой команды с параметром --delete
заставляет меня нервничать, поэтому я написал следующий скрипт для поиска файлов, которые являются ОБЩИМИ как для $DIR1, так и для $DIR2, но будут перемещать файлы только из $DIR1 в папку для мусора. для последующего просмотра, оставляя уникальные файлы позади. Он также сохраняет структуру каталогов в папке корзины, что упрощает восстановление.
IFS=$'\n'
for file in `jdupes -r -T -T "$DIR1" "$DIR2" | awk -v p1="$DIR1" -v p2="$DIR2" '$0 ~ p1 && $0 ~ p2' RS="\n\n" ORS="\n\n" | grep "$DIR1"`; do
echo "$file" | grep -q "^$DIR1/duplicated_files/" && continue
output="$DIR1/duplicated_files/`dirname "$file" | awk -v p="$DIR1/" '{sub(p, "")}1'`"
mkdir -p "$output"
echo "Moving $file"
mv "$file" -t "$output"
done
Это оставит после себя пустые каталоги, которые можно удалить с помощью:
find "$DIR1" -type d -empty -printf "Deleting empty folder: " -print -delete
Ваше сетевое устройство называется eth0:
May 15 13:50:00 xxx systemd-networkd[481]: eth0: IPv6 successfully enabled
, но ваше правило применяется только к интерфейсам с именемenp1s0
:
[Match]
Name=enp1s0
Это описано в Arch Wiki(в разделе [Match])и в man-странице systemd.networkd(в разделе [Match Section Options]). Значение Name
должно соответствовать имени устройства, но enp1s0
не соответствует eth0
. Вы должны изменить правило на Name=eth0
.