скрипт перевода имени файлов в нижний регистр на linux
Иногда бывает нужно привести имена файлов в один регистр. Для этого создаем файл с расширением sh и записываем в него следующее: #!/bin/bash function process_dir() { #используем локальные переменные, ибо функция рекурсивна local dir=$1 local item for item in "$dir"/* do # пустая директория/* будет расширена '*', e.g.: /какаято/папка/* # делаем проверку на существование: [[ ! -e $item ]] && return # если директория, обрабатываем рекурсивно [[ -d $item ]] && process_dir $item # теперь отделим имя файла от пути и создадим # эквивалент имени файла "маленькими буквами" local path=${item%/*} local name=${item##*/} local lcase_name=$(tr 'A-Z' 'a-z' <<< $name) # для облегчения работы, проверим в нижнем ли регистре имя файла if [[ $name !