From b372316598919d47492b9e139d709e2050acec45 Mon Sep 17 00:00:00 2001 From: tux-box Date: Sun, 7 Jan 2024 16:06:35 -0600 Subject: [PATCH] added a make lower case bash script to tools --- Tools/makeLowerCase.bash | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 Tools/makeLowerCase.bash diff --git a/Tools/makeLowerCase.bash b/Tools/makeLowerCase.bash new file mode 100644 index 00000000..12e84e53 --- /dev/null +++ b/Tools/makeLowerCase.bash @@ -0,0 +1,27 @@ +#!/bin/bash +#print usage +if [ -z $1 ];then + echo "Usage :$(basename $0) directory to recursivly make lowercase" + exit 1 +fi + +#process all subdirectories and files in parent directory +all="$(find $1 -depth)" + +for name in ${all}; do + #set new name in lower case for files and directories + new_name="$(dirname "${name}")/$(basename "${name}" | tr '[A-Z]' '[a-z]')" + + #check if new name already exists + if [ "${name}" != "${new_name}" ]; then + [ ! -e "${new_name}" ] && mv -T "${name}" "${new_name}"; echo "${name} was renamed to ${new_name}" || echo "${name} wasn't renamed!" + fi +done + +echo +echo +#list directories and file new names in lowercase +echo "Directories and files with new names in lowercase letters" +find $(echo $1 | tr 'A-Z' 'a-z') -depth + +exit 0 \ No newline at end of file