From 32f71d6d456e0a0cd89f9fa03c62d984f3afa05d Mon Sep 17 00:00:00 2001 From: Emil Velikov Date: Sun, 22 Sep 2024 17:00:01 +0100 Subject: [PATCH] copy-firmware.sh: warn if the destination folder is not empty If the user provides an existing non-empty folder (their /usr/lib/firmware/ or otherwise) there is a high chance we'll silently overwrite existing files. That may or may not be what they wanted, so throw a warning so highlight that. v2: - use printf instead of echo Signed-off-by: Emil Velikov --- copy-firmware.sh | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/copy-firmware.sh b/copy-firmware.sh index 381bde29..fa83492e 100755 --- a/copy-firmware.sh +++ b/copy-firmware.sh @@ -16,6 +16,10 @@ err() { exit 1 } +warn() { + printf "WARNING: %s\n" "$*" +} + while test $# -gt 0; do case $1 in -v | --verbose) @@ -63,6 +67,10 @@ if test -z "$destdir"; then err "destination directory was not specified" fi +if test -d "$destdir"; then + find "$destdir" -type d -empty >/dev/null || warn "destination folder is not empty." +fi + # shellcheck disable=SC2162 # file/folder name can include escaped symbols grep -E '^(RawFile|File):' WHENCE | sed -E -e 's/^(RawFile|File): */\1 /;s/"//g' | while read k f; do test -f "$f" || continue