X-Git-Url: https://zdv2.bktei.com/gitweb/BK-2020-03.git/blobdiff_plain/40979a9da56b90894368a14145d848f4b216a7e5..0f0743baffad4511e50f06a58d34ac01811b0064:/user/gthumb/rmall.org?ds=sidebyside diff --git a/user/gthumb/rmall.org b/user/gthumb/rmall.org index d5e8986..40a4afd 100644 --- a/user/gthumb/rmall.org +++ b/user/gthumb/rmall.org @@ -12,7 +12,8 @@ parent directories (e.g. ~dir1~, ~dir2~) are preserved within ~.trash/~. ** Stats -Version: 0.0.3 +Version: 0.0.6 +License: GPLv3+ gThumb version: ~3.12.6~ Suggested keyboard shortcut: ~Shift + T~ @@ -21,7 +22,7 @@ Suggested keyboard shortcut: ~Shift + T~ with each extension type in a separate directory. For example, letʼs say a ~JPG/~ directory contains ~JPG/DSC01001.JPG~, ~JPG/DSC01001.JPG.ots~ and a ~ARW/~ directory contains -~ARW/DSC01001.ARW~. With ~JPG/DSC01001.JPG~ selected in gThumb, +~ARW/DSC01001.ARW~. With ~JPG/DSC01001.JPG~ selected in gThumb, a ~.trash~ directory is created next to ~JPG/~ and ~ARW/~. Then, the following moves are performed: @@ -37,36 +38,42 @@ Then, it is upon the user to empty the contents of ~.trash~ to permanently delete them. ** Code +Paste the code below into the ~Command~ field of the ~Edit Command~ +window under 🔧 → Personalize… . + Line-by-line view: #+BEGIN_EXAMPLE -# rmall v0.0.3 -dbf=/tmp/gtlog.txt; -f="%F"; -fbase="$(basename "$f")"; -fne="${fbase%.*}"; +# rmall v0.0.6 +fdebug=/tmp/gtlog.txt; +f=%F; +fBase="$(basename "$f")"; +fne="${fBase%.*}"; dppar="$(dirname %P)"; dtrash="${dppar}/.trash"; -printf "%s\n" "$dbf" "$f" "$fbase" "$fne" "$dppar" "$dtrash" 1>"$dbf" 2>&1; -for fsrc in "${dppar}/"*"/${fne}".*; do +if [ -z "$fne" ]; then printf "FATAL: Empty stem from:%s\n" "$fne" 1>>"$fdebug" 2>&1; exit 1; fi; +runDate="$(date -Is 2>&1)"; +printf "STATUS:runDate:%s\n" "$runDate" 1>>"$fdebug" 2>&1; +printf "DEBUG:fdebug:%s\n" "$fdebug" 1>>"$fdebug" 2>&1; +printf "DEBUG:f:%s\n" "$f" 1>>"$fdebug" 2>&1; +printf "DEBUG:fBase:%s\n" "$fBase" 1>>"$fdebug" 2>&1; +printf "DEBUG:fne:%s\n" "$fne" 1>>"$fdebug" 2>&1; +printf "DEBUG:dppar:%s\n" "$dppar" 1>>"$fdebug" 2>&1; +printf "DEBUG:dtrash:%s\n" "$dtrash" 1>>"$fdebug" 2>&1; +for fsrc in "${dppar}"/*/"${fne}".*; do if [ ! -e "$fsrc" ]; then continue; fi; sdname="$(basename "$(dirname "$fsrc")")"; ddest="${dtrash}/${sdname}"; - printf "fsrc:%s\n" "$fsrc"; - printf "sdname:%s\n" "$sdname"; - printf "ddest:%s\n" "$ddest"; + printf "DEBUG:fsrc:%s\n" "$fsrc" 1>>"$fdebug" 2>&1; + printf "DEBUG:sdname:%s\n" "$sdname" 1>>"$fdebug" 2>&1; + printf "DEBUG:ddest:%s\n" "$ddest" 1>>"$fdebug" 2>&1; if [ ! -d "$ddest" ]; then - printf "DEBUG:ddest does not exist:%s" "$ddest"; + printf "DEBUG:Destination dir does not exist. Creating:%s\n" "$ddest" 1>>"$fdebug" 2>&1; mkdir -p "$ddest"; else - printf "DEBUG:ddest exists:%s" "$ddest"; + printf "DEBUG:Destination dir exists:%s\n" "$ddest" 1>>"$fdebug" 2>&1; fi; - printf "STATUS: Moving %s → %s\n" "$fsrc" "$ddest/"; + printf "STATUS: Moving %s → %s\n" "$fsrc" "$ddest/" 1>>"$fdebug" 2>&1; mv -n "$fsrc" "$ddest/"; -done 1>>"$dbf" 2>&1; +done 1>>"$fdebug" 2>&1; sleep 1; #+END_EXAMPLE - -Paste-ready view: -#+begin_example -dbf=/tmp/gtlog.txt; f="%F"; fbase="$(basename "$f")"; fne="${fbase%.*}"; dppar="$(dirname %P)"; dtrash="${dppar}/.trash"; printf "%s\n" "$dbf" "$f" "$fbase" "$fne" "$dppar" "$dtrash" 1>"$dbf" 2>&1; for fsrc in "${dppar}/"*"/${fne}".*; do if [ ! -e "$fsrc" ]; then continue; fi; sdname="$(basename "$(dirname "$fsrc")")"; ddest="${dtrash}/${sdname}"; printf "fsrc:%s\n" "$fsrc"; printf "sdname:%s\n" "$sdname"; printf "ddest:%s\n" "$ddest"; if [ ! -d "$ddest" ]; then printf "DEBUG:ddest does not exist:%s" "$ddest"; mkdir -p "$ddest"; else printf "DEBUG:ddest exists:%s" "$ddest"; fi; printf "STATUS: Moving %s → %s\n" "$fsrc" "$ddest/"; mv -n "$fsrc" "$ddest/"; done 1>>"$dbf" 2>&1; sleep 1; -#+end_example