Переименование файла в командной строке. Групповое переименование файлов в Windows

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

Вы можете легко переименовать один или несколько файлов в Windows Explorer (Проводник), но вы также можете сделать это и с помощью командной строки или PowerShell .

Давайте рассмотрим каждый вариант и как он работает.

Переименование нескольких файлов в проводнике Windows.

Проводник Windows (известный как File Explorer в Windows 10) является удивительно мощным. Вы наверное знаете, как переименовать один файл, но давайте начнем с основ, так как передовые приемы имеются.

Если вы используете мышь, у вас есть не менее трех способов выбора названия файла и переименовать его.

Мы можем сделать следующее:

⦁ Нажмите, чтобы выбрать файл, а затем нажмите кнопку "Переименовать " в главном меню.
⦁ Нажмите, чтобы выбрать файл, а затем щелкните имя выбранного файла.
⦁ Щелкните правой кнопкой мыши на файл, а затем выберите "Переименовать " в контекстном меню.

А если вы предпочитаете клавиатуру то, вы можете просто использовать клавиши со стрелками (или начните вводить имя файла), чтобы выбрать файл, а затем нажмите клавишу F2 , чтобы выбрать имя файла.После того как вы выделили имя выбранного файла, вы сразу можете вписать своё имя.

Когда вы закончите вводить имя файла, нажмите Enter (или просто нажмите где-нибудь еще), чтобы сохранить новое имя.

Вот где все становится интересно: это когда вы нажимаете клавишу Tab для автоматического выбора следующего имени файла в папке, так что вы можете сразу же начать вводить новое имя для него. Продолжайте нажимать Tab и вводить имена таким образом, и вы можете легко переименовать все файлы в папке.

Если вы имеете кучу файлов в той же папке, и этим файлам не нужны разные имена то Windows обеспечивает простой способ переименовать эти файлы в пакетном режиме.

Начните с выделения нескольких файлов удерживая клавишу Ctrl+A , чтобы выбрать несколько файлов одновременно,или выбирайте файлы, используя одну из команд кнопкой Переименовать в меню Главная , команду в контекстном меню, или просто нажать F2 . Вы увидите, что все файлы остаются выделенными.

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

Переименование нескольких файлов из командной строки

Если вам нужно больше возможностей вы можете использовать rename или ren команду в окне командной строки для одного или нескольких файлов.

Команда принимает подстановочные символы, такие как * и? для согласования нескольких файлов, которые могут быть полезны, если вы только хотите переименовать определенный набор файлов в папке.

Самый быстрый способ открыть окно командной строки в нужном место это сначала нужно открыть папку в File Explorer. В меню "Файл " выберите пункт "Открыть командную строку ", а затем выберите пункт "Открыть командную строку ".

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

ren "current_filename.ext" "new_filename.ext"

Эти кавычки необходимы, если ваши имена файлов содержат пробелы. Если пробелов нет то вы не нуждаетесь в кавычках.
Так, например, переименовать файлы с "WordFile (1) .docx" в "файл (01) .docx"используем следующую команду:

ren "wordfile (1).docx" "my word file (01).docx"

Поскольку ren команда может использоваться и для изменения расширения файла, вы можете также использовать его для изменения расширений нескольких файлов одновременно. Скажем, например, у вас был выбор.txt файлов которые вы хотели, чтобы они превратились в.html файлы. Вы можете использовать следующую команду вместе с шаблоном подстановки звёздочкой * :

ren *.txt *.html

Переименование нескольких файлов с помощью PowerShell

PowerShell предлагает еще большую гибкость для переименования файлов в среде командной строки.

С помощью PowerShell, вы можете использовать вывод одной команды известный как "commandlet " в PowerShell терминалах например на Linux и других UNIX-подобных систем. Вам нужны две важные команды это Dir в котором перечислены файлы в текущем каталоге, и Rename-Item который переименовывает элемент (файл, в данном случае).

Самый быстрый способ открыть окно PowerShell в нужном месте, нужно сначала открыть папку в. В меню "Файл " выберите пункт "Открыть Windows PowerShell ", а затем выберите пункт "Открыть Windows Powershell ."

Во-первых, давайте посмотрим на переименование одного файла. Для этого нужно использовать следующий синтаксис:

rename-item "current_filename.ext" "new_filename.ext"

Так, например, чтобы переименовать файл с "wordfile.docx" в "Мое Слово File.docx" то используем следующую commandlet:

rename-item "wordfile.docx" "My Word File.docx"

Это достаточно просто. Но реальная возможность в PowerShell происходит от способности синтаксиса commandlets вместе и некоторые из условных выводов, поддерживаемых rename-itemcommandlet.
Скажем, например, у нас была куча файлов с именем "WordFile (1) .docx", "WordFile (2) .docx", и так далее.

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

dir | rename-item -NewName {$_.name -replace " ","_"}

И теперь, наши файлы выглядят так, как мы хотим.

Приложение AdvancedRenamer

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

В приведенном ниже примере я создал метод переименования, используя следующий синтаксис:

Word File____()

Эта команда говорит AdvancedRenamer назвать все мои файлы в "Word File" и добавить дату создания в формате ГМД (разделяющую каждое слово подчеркиванием). Он также добавляет добавочный номер файла в скобках и отделяются друг от друга дополнительным подчеркиванием.

И как вы можете видеть, мои файлы были переименованы именно так, как я хочу.

Есть ли другие способы для переименования файлов в Windows ? Не забудьте оставить нам комментарий и дайте нам знать об этом.

Изменяет имя файла или набора файлов.

Синтаксис

rename [диск : ][путь ] имя_файла_1 имя_файла_2

ren [диск : ][путь ] имя_файла_1 имя_файла_2

Параметры

[диск : ][путь ] имя_файла1 Задает местоположение и имя файла или набора файлов для переименования. имя_файла_2 Задает новое имя файла. Если используются подстановочные знаки (* и?), то имя_файла_2 указывает новые имена для файлов. При переименовании файлов нельзя задать новый диск или путь. /? Вывод справки в командной строке.

Примечания

  • Переименование файлов

    Допускается переименование всех файлов, соответствующих заданному имени файла. Команду rename нельзя использовать для переименования файлов на разных дисках или для их перемещения в другой каталог.

  • Использование подстановочных знаков при переименовании

    Подстановочные знаки (* и?) могут быть использованы в параметрах, задающих имена. Если они использованы в параметре имя_файла_2 , то символы, замещаемые символами подстановки, будут теми же, что и в параметре имя_файла_1 .

  • Команда переименования не будет работать, если имя_файла_2 уже существует.

    Если имя файла, задаваемое параметром имя_файла_2 , уже существует, команда rename выведет на экран следующее сообщение:

    Дублирование имени файла или файл не найден

Примеры

Допустим, что необходимо изменить расширения имен всех файлов в текущем каталоге с расширением.txt; например, требуется заменить расширение.txt на.doc. Для выполнения этих изменений введите:

Для переименования файла или каталога Chap10 в Part10 введите.

Переименование файла linux - очень простая операция, но для новичков в Linux эта задача может оказаться сложной. Также здесь есть несколько нюансов и возможностей, которые желательно знать уже опытным пользователям, например, массовое переименование. В графическом интерфейсе все делается очень просто, но настоящую гибкость дает терминал.

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

Как переименовать файл в Linux с помощью mv

В Linux существует замечательная стандартная утилита mv, которая предназначена для перемещения файлов. Но по своей сути перемещение - это то же самое, что и переименование файла linux, если выполняется в одной папке. Давайте сначала рассмотрим синтаксис этой команды:

$ mv опции файл-источник файл-приемник

Теперь рассмотрим основные опции утилиты, которые могут вам понадобиться:

  • -f - заменять файл, если он уже существует;
  • -i - спрашивать, нужно ли заменять существующие файлы;
  • -n - не заменять существующие файлы;
  • -u - заменять файл только если он был изменен;
  • -v

Чтобы переименовать файл linux достаточно вызвать утилиту без дополнительных опций. Просто передав ей имя нужного файла и новое имя:

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

mv /home/sergiy/test/newfile /home/sergiy/test/file1

Обратите внимание, что у вас должны быть права на запись в ту папку, в которой вы собираетесь переименовывать файлы. Если папка принадлежит другому пользователю, возможно, нужно будет запускать программу через sudo. Но в таком случае лучше запускать с опцией -i, чтобы случайно ничего не удалить.

Переименование файлов Linux с помощью rename

В Linux есть еще одна команда, которая позволяет переименовать файл. Это rename. Она специально разработана для этой задачи, поэтому поддерживает такие вещи, как массовое переименование файлов linux и использование регулярных выражений. Синтаксис утилиты тоже сложнее:

$ rename опции "s/ старое_имя / новое_имя " файлы

$ rename опции старое_имя новое_имя файлы

В качестве старого имени указывается регулярное выражение или часть имени которую нужно изменить, новое имя указывает на что нужно заменить. Файлы - те, которые нужно обработать, для выбора файлов можно использовать символы подставки, такие как * или?.

Рассмотрим опции утилиты:

  • -v - вывести список обработанных файлов;
  • -n - тестовый режим, на самом деле никакие действия выполнены не будут;
  • -f - принудительно перезаписывать существующие файлы;

Например, переименуем все htm файлы из текущей папки в.html:

rename "s\.htm/\.html/" *.htm

Или для изображений:

rename "s\.jpeg/\.jpg/"*

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

  • g (Global) - применять ко всем найденным вхождениям;
  • i (Case Censitive) - не учитывать регистр.

Модификаторы размещаются в конце регулярного выражения, перед закрывающей кавычкой. Перед тем, как использовать такую конструкцию, желательно ее проверить, чтобы убедиться, что вы не допустили нигде ошибок, тут на помощь приходит опция -n. Заменим все вхождения DSC на photo в именах наших фотографий:

rename -n "s/DSC/photo/gi" *.jpeg

Будут обработаны DSC, DsC и даже dsc, все варианты. Поскольку использовалась опция -n, то утилита только выведет имена изображений, которые будут изменены.

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

rename "y/A-Z/a-z/"*.jpeg

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

Переименование файлов в pyRenamer

Если вы не любите использовать терминал, но вам нужно массовое переименование файлов Linux, то вам понравится утилита pyrenamer. Это графическая программа и все действия здесь выполняются в несколько щелчков мыши. Вы можете установить ее из официальных репозиториев:

sudo apt install pyrenamer

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

Вы можете удалять или добавлять символы, переводить регистр, автоматически удалять пробелы и подчеркивания. У программы есть подсказки, чтобы сделать ее еще проще:

Опытным пользователям понравится возможность pyRenamer для переименования мультимедийных файлов из их метаданных. Кроме того, вы можете переименовать один файл если это нужно. Эта утилита полностью реализует функциональность mv и remove в графическом интерфейсе.

Выводы

В этой статье мы рассмотрели как переименовать файл в консоли linux. Конечно, есть и другие способы, например, написать скрипт, или использовать файловые менеджеры. А как вы выполняете сложные операции по переименованию? Напишите в комментариях!

Для переименования одного или нескольких файлов, а также каталогов посредством командной строки используются команды RENAME и MOVE.

Команда RENAME имеет следующий синтаксис: RENAME [диск:][путь] имя_файла1 имя_файла2. В данном случае «имя_файла1» определяет текущее название файла (каталога), а «имя_файла2» определяет название файла (каталога), которое он получит после переименования. Для примера, создадим на диске «С» файл «text.txt», тогда команда для переименования этого файла в файл «file.txt» будет выглядеть так: rename text.txt file.txt

Команда RENAME может переименовывать не только названия файлов, но и их расширения. Для примера, возьмем файл «file.txt», который мы получили ранее, переименованием файла «text.txt». Изменим у этого файла расширение с «txt» на «doc»: rename file.txt file.doc

Естественно, что команда RENAME может изменять название файла и его расширение одновременно. Например, переименуем файл «file.doc» в файл «text.txt»: rename file.doc text.txt

Команда RENAME допускает использование подстановочных знаков. Подстановочные знаки могут использоваться в именах файлов. Для примера, создадим на диске «С» в дополнение к существующему файлу «text.txt», еще один файл «format.txt». Тогда, для переименования (изменения расширения) обоих файлов используется команда: rename *.txt *.doc

Если подстановочные знаки используются только в параметре «имя_файла2», то результирующее название файла будет совпадать с названием исходного файла. Например, команда rename format.doc *.txt изменит название файла «format.doc» на «format.txt»

Если файл, заданный параметром «имя_файла2» уже существует, то команда RENAME не выполнится. Например, попробуем изменить файл «text.doc» на «format.txt»: rename text.doc format.txt

При переименовании каталога, параметр «имя_файла1» определяет текущее название каталога, а параметр «имя_файла2» - результирующее название каталога. Для примера, создадим на диске «С» папку «11», тогда команда для переименования этой папки в папку «22» будет выглядеть так: rename 11 22

Для закрепления данного материала вы можете поэкспериментировать с подстановочными символами. Например, возьмем такую команду: rename *.* file.html . Она кажется бессмысленной, т.к. все файлы текущего каталога переименовываются в один файл «file.html». Однако данная команда прекрасно выполняется. Дело в том, что все файлы переименовываются поочередно. В результате, первый (по алфавиту) файл будет переименован нормально, а при попытке переименовать 2-ой файл появится сообщение «файл с таким именем уже существует или не найден».

При использовании команды RENAME для параметра «имя_файла2» нельзя указать другой диск или каталог. Для этого используется команда MOVE.
Команда RENAME имеет аналог REN. Обе команды выполняют аналогичные действия и происходят от англ. «rename» - переименовывать.

Предыдущая статья: Команда DEL для удаления файлов.
Оглавление: Командная строка.
Следующая статья: Команда MOVE.