Последние новости:

Поиск по сайту:

Когда все желания людей сбываются — не лучше им (Гераклит Эфесский).

Как переименовать несколько файлов на Linux1 мин для чтения

FavoriteLoadingДобавить в избранное
09.03.2018
Как переименовать несколько файлов на Linux

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

К счастью, переименование программного обеспечения может помочь нам решить эту проблему. В этой статье мы ознакомимся с несколькими опциями для пакетного переименования файлов в системах на базе Debian, а также RHEL на основе систем (RedHat Enterprise Linux).

Операционные системы на базе Debian

Debian и подобные дистрибутивы, такие как Ubuntu и Linux Mint имеют встроенный инструмент командной строки для пакетного переименования файлов. «rename», предлагается на некоторых операционных системах на основе Debian, является одним из самых мощных инструментов переименования на Linux. Работа по переименованию очень похожа на то, как работает «sed» — это, по существу, это утилита sed для имен файлов. Он может также использовать выражение Perl, поэтому если у вас есть некоторые знания Perl, эта утилита будет работать для вас.

Важно: В некоторых операционных системах, основанных на Debian, в которых будет установлен «rename» может действительно иметь вариант «rename» из пакета util-Linux и пакет. Этот вариант util-linux является гораздо более простой версией «rename», которая не имеет почти столько же функций, как версия, которая поставляется на Debian и Ubuntu.

Основы переименования файлов

Вы можете найти и заменить текст в именах файлов, выполнив следующую команду. Убедитесь в том, чтобы изменить значение «Поиск» и «заменить» на текст, который вы хотите изменить. Имейте в виду, что маски являются доступны внутри поля поиска.

Примечание:
Вы можете использовать опцию -n, чтобы сначала выполнить «сухой запуск», который не влияет на имена файлов. Опция -v делает все операции подробными.

Пример:

rename -v 's/search/replace/' *

 

Читать  Команда ifconfig в Linux

Изменение типов файлов

Вы также можете переименовать типы файлов, определенных файлов, с помощью этого метода — просто заменить «search» и «replace» на новый тип файла.

Примечание:
Не забудьте добавить обратную косую черту перед типом файла, иначе команда не будет работать.

Пример:

rename -v 's/\.search/\.replace/' *

 

Другие дополнительные команды

Если вы хотите переименовать файлы и иметь увеличивающийся ряд в конце имени файла, это может быть сделано, также с применением Perl:

rename -v 's/search/our $i; sprintf("replace%03d.txt", 1+$i++)/e' *

 

Причина «% 03d» в этой команде, чтобы описать, сколько нулей мы хотим добавить перед нашими номерами. Это используется для хранения файлов, при сортировке файлов в алфавитном порядке. «sprintf» фактически является функцией от Perl, используется для форматирования имени. Она показывает одну из сильных сторон этой версии переименования. Вот пример.

файлы:

file1

file2

Команда:

rename -v 's/file*/our $i; sprintf("name%03d.txt", 1+$i++)/e' *

Вывод:

name001

name002

 

В случае, если вам нужен конкретный формат для ваших имен файлов, существует множество сценариев Perl доступных в Интернете для переименования файлов во всевозможных форматах.

 

Операционные системы на основе RHEL

RedHat Enterprise Linux и связанное с ним дистрибутивы, такие как CentOS также имеют версию «rename» устанавливаемые по умолчанию. Это вариант «Util-Linux», не такой многофункциональный, как тот, который установлен на большинстве систем на базе Debian.

 

Основы переименования файлов

Что касается версии Util-Linux, все это делает простой поиск и замену операций для имен файлов. Вы вводите строку, которую вы ищете в файлах, и указываете, какую строку вы хотите заменить в строке поиска.

rename "search" "replace" *

 

Это все функциональные возможности, доступные со встроенной утилитой rename в системах на базе RHEL. Если вам нужно сделать более расширенное переименование, подойдет bash scripting с использованием циклов и операций, связанных вместе. Вот пример переименования файлов при добавлении увеличивающегося числа в конец файла. Просто измените ‘search’ и ‘replace’ в скрипте соответствующие имена, которые вы ищете и заменяете. Вот пример:

Читать  7 инструментов командной строки, которые сделают вашу жизнь проще

 

Шаг 1: Создайте файл сценария в каталоге, содержащий файлы, которые вы хотите переименовать.
touch renameScript.sh
Шаг 2: Откройте файл в текстовом редакторе и добавьте этот скрипт в файл. Когда закончите, закройте текстовый редактор. (Не забудьте изменить «search» и «replace» в сценарии для вашего поиска!)
find -name 'search' | # find file

gawk 'BEGIN{ a=1 }{ printf "mv %s replace%03d\n", $0, a++ }' 

bash # run
Шаг 3: Сделайте файл исполняемым.
chmod 644 renameScript.sh
Шаг 4: Выполните сценарий, введя следующую команду.
sh renameScript.sh

Вот что это будет выглядеть в выводе.

файлы:

file1

file2

Команда:

sh renameScript.sh

Вывод:

name001

name002

 

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (1 оценок, среднее: 5,00 из 5)
Загрузка...
Поделиться в соц. сетях:

0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

**ссылки nofollow

0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии

Это может быть вам интересно

Статьи партнеров:

Рекомендуемое
В этой статье мы покажем вам, как вы можете установить…
0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам:

Заполните форму и наш менеджер перезвонит Вам в самое ближайшее время!

badge
Обратный звонок 1
Отправить

Спасибо! Ваша заявка принята

close

Спасибо! Ваша заявка принята

close