Преобразование имен файлов в нижний регистр через командную строку Ubuntu

Работая с Linux, вы можете столкнуться с некоторыми утилитами и приложениями, которые работают только с именами файлов в нижнем регистре. Обычно мы не сохраняем файлы в таком формате и, возможно, нам придется искать обходной путь, который рекурсивно преобразует все имена файлов в папке в нижний регистр. В этой статье мы покажем вам два способа преобразования всех имен файлов и папок по заданному пути в нижний регистр, просто используя командную строку.

Вот как можно перечислить содержимое папки с помощью команды find:

В моей папке /tmp, которую я буду использовать в качестве примера для этой статьи, все файлы начинаются с заглавных букв, а также содержат несколько файлов между именами.

Перечислите файлы с помощью команды find

Метод 1: Использование команды rename

В этом методе мы будем использовать команды Ubuntu find, Xargs и rename, чтобы рекурсивно переименовать все файлы/папки в заданном каталоге.

Откройте командную строку Ubuntu, Терминал, либо через поиск в Application Launcher, либо сочетанием клавиш Ctrl+Alt+T.

Открытие терминала

Вот синтаксис команды, которую вы будете использовать:

Если в вашей системе не установлена команда rename, вы можете получить ошибку при выполнении вышеуказанной команды. Вы можете установить rename в Ubuntu с помощью следующей команды apt-get:

Я буду использовать следующую команду для преобразования имен файлов в нижний регистр в каталоге Downloads:

Изменение имен файлов на строчные в Linux

Когда я снова просмотрел содержимое каталога, я увидел, что все имена файлов преобразованы в нижний регистр следующим образом:

Список имен файлов

Метод 2: Использование сценария для переименования файлов

В этом методе мы воспользуемся сценарием bash, который использует команды find и mv для рекурсивного переименования имен файлов и папок каталога, включая само имя каталога.

Откройте приложение Terminal и перейдите в папку bin следующим образом:

Теперь откройте новый файл скрипта в одном из ваших любимых текстовых редакторов. Мы будем использовать редактор nano, чтобы открыть пустой файл скрипта с именем lowercase_filenames.sh

В этот пустой файл добавим следующий скрипт.

Вместо того чтобы вводить весь скрипт в ваш bash файл, вы можете скопировать его отсюда и вставить в Терминал, используя Ctrl+Shift+V, или используя опцию Paste из меню правой кнопки мыши.

Вот как будет выглядеть ваш файл:

Файл скрипт переименования строчных букв

Теперь выйдите из файла через сочетание клавиш Ctrl+X и сохраните файл на запрос "Сохранить измененный буфер?", набрав Y и нажав Enter.

Для того чтобы сделать этот файл исполняемым скриптом, выполните следующую команду в Терминале:

Теперь вы можете использовать этот скрипт в любой из ваших папок.

Когда я запускаю скрипт в папке tmp, я вижу, что имена всех файлов и вложенных папок преобразованы в нижний регистр следующим образом:

Запуск скрипта для перевода имен файлов в нижний регистр

Итак, это были два способа, с помощью которых вы можете переименовать имена файлов в строчные буквы, чтобы используемое вами приложение не распознавало имена файлов в верхнем регистре.

Понравилась статья? Поделиться с друзьями:
Добавить комментарий