From 7e033412bdf36b5391d4e94b9b1435085b9716e5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kier=C3=A1n=20Meinhardt?= Date: Wed, 25 Sep 2024 22:14:38 +0200 Subject: [PATCH] add sd card fixer --- .bin/fix-sd.sh | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100755 .bin/fix-sd.sh diff --git a/.bin/fix-sd.sh b/.bin/fix-sd.sh new file mode 100755 index 0000000..e36202b --- /dev/null +++ b/.bin/fix-sd.sh @@ -0,0 +1,19 @@ +#!/bin/sh + +drive="$1" +mountpoint="/media/sd-card-$(date +%s)" + +trap clean EXIT +clean() { + umount "$mountpoint" + rm "$mountpoint" +} + +filenames="$(fsck.exfat "$drive" 2>&1 | sed -nE "s/.* file '(.*?)' is not allocated.*/\1/p")" +mkdir "$mountpoint" +mount "$drive" "$mountpoint" + +echo "$filenames" | while read -r filename; do + find "$mountpoint" -type f -name "$filename" -exec rm {} \; +done +