From 01efda71988928ebd5ba20e35944cf8b9c802b80 Mon Sep 17 00:00:00 2001 From: Xiao Pan Date: Tue, 9 Jan 2024 06:24:52 -0800 Subject: Move most shell scripts to a separate repo fsh --- home/xyz/.local/bin/mvtr | 11 ----------- 1 file changed, 11 deletions(-) delete mode 100755 home/xyz/.local/bin/mvtr (limited to 'home/xyz/.local/bin/mvtr') diff --git a/home/xyz/.local/bin/mvtr b/home/xyz/.local/bin/mvtr deleted file mode 100755 index 28eebf0f..00000000 --- a/home/xyz/.local/bin/mvtr +++ /dev/null @@ -1,11 +0,0 @@ -#!/bin/sh - -# can use ls pipe to sed pipe to bash, similar to eval? see comment at link: -# link also show perl-rename approach -# https://linuxconfig.org/rename-all-files-from-uppercase-to-lowercase-characters -# if only change ' ' to '_' `rename` might be sufficient, for upper to lower case might need perl-rename if want concise - -# ./_filename will be renamed ./filename, not what I want, need improve -# -exec can't replace -execdir here, can write a -exec version - -find "$@" -depth -execdir sh -c 'dest="$(echo "$1" | tr -d "\047" | sed -E -e "s/([[:lower:]])([[:upper:]])/\1_\2/g" | tr "[:upper:] " "[:lower:]_" | tr -s "[:punct:]" | sed -E -e "s#/-#/#g" -e "s/_([[:punct:]])/\1/g" -e "s/([[:punct:]])_/\1/g" | tr -s "[:punct:]")"; [ -e "$dest" ] || mv -v -- "$1" "$dest"' shell '{}' \; -- cgit v1.2.3-70-g09d2