Как изменить имя файла вес в. Массовое переименование файлов


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

Имя файла – это, например, prim.doc, то есть сначала имя файла (prim), а после точки следует расширение имени файла (.doc). Windows считает расширением только последние 3-4 символа после имени файла.

Как изменить имя файла в Windows

Чтобы устранить эту проблему, нужно вернуть файлу его “старое” расширение. Но будьте внимательны и не перепутайте. Если Вы дадите расширение “.exe” файлу, который не является программой, то последствия могут быть плачевные. Одно из таких последствий – зависание операционной системы.

Как включить режим просмотра расширений имени файла в Windows XP

По умолчанию Windows скрывает расширения файлов.

Такой режим не всегда удобен. Но есть и плюсы – Вы случайно не смените расширения файлов.

Чтобы включить режим просмотра расширений имени файла в Windows XP, зайдите в окно «Мой компьютер».

Сверху в меню окна найдите «Сервис» – «Свойства папки» – «Вид» и снимите там галочку «Скрывать расширения для зарегистрированных типов файлов» (привожу настройки для Windows XP). После того, как галочку сняли, нажимаем на «ОК». После этого расширения у файлов станут видны.

Просмотр расширений в Windows 7

В Windows 7, чтобы увидеть расширения для зарегистрированных файлов, надо пройти путь “Пуск” – “Панель управления” – “Параметры папок”:


Windows 7: как увидеть расширения файлов на своем ПК

Открыть вкладку “Вид”, снять галочку напротив опции «Скрывать расширения для зарегистрированных типов файлов» и нажать “ОК”. Расширения файлов в Windows 7 после этого перестанут быть для Вас “тайной за семью печатями”.

О сочетании клавиш проводника Ctrl + Shift + N внезапно зацепил приверженцев альтернативных файловых менеджеров. По ходу дела всплыла тема массового переименования файлов.

Евгений Генеральчик подметил, что в отличие от Total Commander, проводнику не по зубам переименование 20 тысяч файлов, например, добавление к имени файла текущей даты. Действительно, в классической серии пенальти я сам признал незаменимым сочетание Ctrl + M в TC, сфокусировавшись на функции поиска/замены.

Однако, отвечая Евгению в ВК, я заметил, что его задачу переименования решу в PowerShell и даже ванлайнером. Написал и подумал – надо все-таки решить, а то вдруг попросят пруфов:)

Сегодня в программе

Переименование файлов методом «поиск / замена»

Через несколько минут у меня получился такой вариант:

Get-ChildItem -Path $env:userprofile\Downloads -Filter "*.zip*" -Recurse |` Rename-Item -NewName {$_.Name -Replace "\.zip$", "-$(Get-Date -Format {yyyy-MM-dd}).zip"} -WhatIf

На самом деле в команде одна строка, а на две я ее разбил, чтобы она лучше читалась. Давайте разберем составляющие команды.

Выборка файлов

Для получения списка файлов я использую командлет Get-ChildItem . Он же gci , он же ls , он же Элла Кацнельбоген dir , а эта команда прекрасно знакома всем, кто написал хоть один батник.

  • -Path $env:userprofile\Downloads – файлы ищутся по заданному пути, т.е. в папке Downloads в профиле пользователя
  • -Filter "*.zip" – фильтруются только файлы с расширением ZIP. Впрочем, в выборку попадут также и файлы, содержащие в имени ".zip", но этим я пренебрегу. В принципе, можно не указывать параметр, а просто написать .zip .
  • -Recurse – поиск ведется рекурсивно, т.е. во всех вложенных папках. Кстати, в PowerShell 5.0, т.е. в Windows 10, у gci появился новый параметр -Depth, задающий глубину рекурсии. Например, 0 – только текущая папка, 2 – на два уровня вглубь.

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

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

Командлет Rename-Item тоже обладает хорошо известным псевдонимом ren . С помощью параметра -NewName задается новое имя, а в фигурных скобках стоит выражение, задающее условия переименования

  • $_.Name – для каждого переданного по конвейеру файла изменяется полное имя.Name
  • -Replace "\.zip$", "-дата.zip" – я слегка упростил конструкцию, написав дату словом, чтобы был понятен смысл аргументов оператора -Replace: ‘что ищем’, ‘на что меняем’. Здесь тонкость в том, что у -Replace первый аргумент — регулярное выражение, а не просто поиск текста. В регулярных выражениях точка означает любой символ, поэтому использование ".zip" чревато нежелательным переименованием, например, файла winzip -setup.exe.
  • "-$(Get-Date -Format {yyyy-MM-dd}).zip" – подставляем мы все-таки текущую дату в формате 2015-09-04. Формат дат я уже разбирал , а здесь хочу обратить ваше внимание на другой фокус. Выражение (в данном случае – командлет) не получится вставить просто так в аргумент оператора, но его можно поместить между круглыми скобками такой конструкции $() .
  • -WhatIf – этот стандартный параметр в переводе означает «что будет, если». Когда он добавлен в команду, ее реального выполнения не происходит, а в консоль выводится результат того, что могло бы произойти без этого параметра. Другими словами, вы можете проверить команду у себя, не опасаясь, что все архивы переименуются:)

Переименование файлов путем добавления счетчика

По ходу обсуждения в ВК выяснилось, что пример с датой надуманный, а более реальной выглядит последовательная нумерация файлов. Действительно, в TC я часто использовал очень удобный счетчик [C] для переименования графических файлов.


В PowerShell его тоже можно реализовать. Допустим, надо добавить счетчик из трех цифр в конце имени всех файлов JPG в текущей папке. Команда может быть такой:

Dir *.jpg | % {$i=1} {ren $_ -NewName ("$($_.Basename)-{0:00#}.jpg" -f $i++) -WhatIf}

С выборкой все понятно, поэтому давайте разберем переименование.

  • % — псевдоним командлета Foreach-Object , который перебирает по одному все переданные по конвейеру объекты. За ним следуют два блока скриптов в фигурных скобках { }, о которых чуть ниже.
  • {$i=1} – первый блок, в котором переменная i получает значение 1. Это нужно для счетчика, который после переименования каждого объекта будет увеличиваться на единицу с помощью $i++ .
  • ren $_ — начало второго блока для переименования каждого полученного по конвейеру объекта.
  • "$($_.Basename)-{0:0#}.png" – новое имя файла. Конструкцию $() я разбирал выше, но здесь я использую свойство Basename , т.е. имя файла без расширения (Name – имя файла с расширением).
    {0:00#} – счетчик, причем в данном случае он трехзначный, что определяется конструкцией из трех символов 00# после двоеточия. Эквивалентом будет {0:D3} , где число после D задает количество символов счетчика.

Примечание о блоках скриптов

Существует три типа блоков:

  • Begin (начало) — выполняется один раз в самом начале, до перебора элементов
  • Process (обработка) — выполняется для каждого элемента
  • End (конец) — выполняется в самом конце перебора

Командлет Foreach-Object обрабатывает блоки особым образом. Если ему указать только один блок, он воспринимает его как Process. Если два, то первый будет Begin, а второй — Process (наш случай). Если все три, то поведение стандартное: Begin → Process → End.

Дискуссия

Я не ставил перед собой задачу описать на языке PowerShell эквиваленты всех функций массового переименования Total Commander. Думаю, что это вполне возможно, а степень успеха зависит лишь от вашего уровня владения PowerShell, .NET и гуглояндексом. Вопрос лишь в том, насколько это целесообразно.

Графический интерфейс TC понятнее, нагляднее и не требует специальной подготовки. Однако бывают ситуации, когда вы не сможете воспользоваться любимым инструментом. Например, его нет в системе, а установить нельзя, поскольку ПК изолирован от внешней среды или это запрещено политикой организации. Если вы не ленитесь расширять свой кругозор и не упускаете случая поковырять PowerShell, вы с честью выйдете из такой ситуации.

Кстати, в ближайших записях я познакомлю вас с некоторыми новыми возможностями платформы PowerShell 5.0, включенной в Windows 10.

Расскажите в комментариях , какую задачу вы в последний раз решали:

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

Я благодарю Василия Гусева за ценные дополнения, которые я добавил в статью после публикации.

С ложно предположить, как это бывает у Вас, но лично у меня постоянно возникает лёгкое чувство удивления и удовлетворения, когда я вновь и вновь открываю для себя какие-то новые функции и возможности при работе с компьютером. Особенно интересно, когда годами выполнял какую-то монотонную операцию, а после, вдруг, выясняется, что всю работу можно было сделать гораздо быстрее, сэкономив время и нервы. Вот и нынче, точно такая ситуация. В силу того, что я обычный пользователь и не вникаю в тонкости компьютерного «железа», в возможность редактирования реестра (хотя, иногда приходится и этим заниматься), мне интересны именно такие возможности и тонкости при работе на ПК, которые отвечали бы следующим требованиям:

  • Были просты в использовании
  • Реально бы экономили время
  • Чтобы при их использовании, исключалась возможность и опасность повреждения ПК и его настроек (это важно, т.к. при неполадках с компьютером, не каждый из нас самостоятельно может устранить неисправность и поломку).
  • Легко запоминались , так как есть такие комбинации клавиш, которые не так-то легко и запомнить, да и в дальнейшем нажимать тремя-четырьмя пальцами на клавиатуру, чтобы выполнить действие – сомнительная экономия времени и своих сил.

Это далеко не полный перечень критериев, которыми я руководствуюсь, но сама идея, думаю, Вам понятна. Итак, сегодня я бы хотел Вам рассказать о такой простой и всем известной компьютерной операции, как «смена имени (названия) » файла или папки. На первый взгляд, как думают многие, кажется, что всё понятно и очень просто, но когда нужно присвоить сотне или тысяче файлов имя, как-то их назвать, или изменить название, вот тут-то и понимаешь всю прелесть этой работы.

Рассмотрим способы, которыми пользуется большинство из нас:

1. Мы делаем один клик правой кнопкой мыши на нужном нам файле и выбираем пункт Переименовать. Появляется поле, где можно ввести нужное имя файла. Способ действительно хорош и удобен, особенно когда необходимо переименовать всего пару-тройку файлов. Если Вам необходимо присвоить новые имена сотне файлов – эта монотонная работа принесет «свои плоды», Вы начнете ошибаться. Это проверено, если сомневаетесь, попробуйте посидеть за этим делом. Кроме того, при таком виде смены имени у файла, пользователь теряет время, иногда ошибочно нажимает на другие пункты меню и т.д. Кстати, иногда пункт Переименовать администраторы сети скрывают от пользователя.

2. Можно выделить файл (просто 1 раз нажать на нем мышью, левой кнопкой), а затем подвести курсор мыши к нему, нажать левую кнопку, подержать нажатой несколько секунд и отпустить. Чудо, снова можно менять имя. Способ удобен, когда человек приобретает определенную сноровку. К отрицательным моментам можно отнести то, что иногда открывается файл и приходится снова тратить время на его закрытие и т.д.

3. Если Вам нужно присвоить порядковые имена ряду файлов, чтобы имена имели вид «название (1), название (2)» и т.д., нужно выделить группу файлов левой кнопкой, затем на файле, с которого начнется нумерация (или название) нажать правой кнопкой мышки, Переименовать, и ввести нужное название. В результате, все выделенные файлы будут переименованы, при этом название у них будет одинаковое, а в скобках станет видна нумерация. Способ очень удобный, я им часто пользуюсь, когда необходимо свести воедино общую группу файлов. Таким образом, можно переименовать сотни файлов буквально за несколько секунд. Рекомендую попробовать этот способ.

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

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

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

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

Скачать программу можно как на компьютерном портале Softodrom.ru , так и на сайте разработчика.

Программа предоставляет пользователю все мыслимые способы группового переименования файлов. Во всяком случае, у меня не хватило фантазии придумать что-нибудь такое, с чем программа не справилась бы! Думаю, что она является незаменимым помощником администраторам и прочему компьютерному люду, а также преподавателям, авторам и иже с ними. Кстати, на что я сразу обратил внимание при обнаружении новой версии ReNamer, так это на появление российской локализации программы. И хотя я и не испытываю особого дискомфорта при работе с английским интерфейсом, но все же, знаете, свой язык он как-то значительно роднее, а - главное - понятнее...

При первой загрузке программы она предложит вам открыть и, соответственно, ознакомиться с кратким руководством по работе (Quick Guide). Если вы имеете базовые понятия английского языка, то советую принять это предложение. Честно говоря, я не часто встречал настолько толковое и при этом краткое описание работы с программой!

Вместе с тем не могу не заметить, что, понимая автора, который ориентирует свое детище на максимально широкий круг пользователей и использует для этого английский язык , он мог бы "сварганить" аналог руководства и на русском, поскольку автор - программист из Тольятти. Кстати, хорошо уже, что российская локализация программы появилась, а то в предыдущих версиях и ее не наблюдалось:). Правда, появилась она только в прошлом году, причем выполнил ее даже и не автор(!) Надеюсь, что автор не шибко будет обижаться на меня за критику, поскольку в работе программа действительно очень хороша.

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

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


Выбор файлов

Выбор файлов для переименования предельно прост. На верхней панели инструментов щелкаем кнопку "Доб. файлы". Если переименованию подлежат все файлы в папке, то используем инструмент "Доб. папки". Выбранные файлы отображаются в нижней части окна. Для удаления файлов используем общепринятые приемы выделения, после чего на списке файлов вызываем контекстное меню и выбираем из него пункт "Удалить выделенные".


Создание правила

На второй (нижней) панели инструментов в верхнем окне щелкаем кнопку "Добавить" ("Добавить новое правило"), после чего появляется окно "Добавить правило", в котором и происходит формирование правила, по которому будет осуществляться переименование файлов. Для запоминания сформированного правила щелкаем в окне большую кнопку "Добавить правило".

Для редактирования правила осуществляем двойной щелчок на его имени.

Для удаления правила на второй панели инструментов следует щелкнуть кнопку "Удалить".

Рассмотрим примеры формирования некоторых типов правил.


Заменить

  1. Из списка названий правил выбираем "Заменить".
  2. В поле "Найти" определяем часть имени, которую нужно изменить. При этом не используем символ "*".
  3. В поле "Заменить" вводим символы, которыми будет заменяться текст в поле "Найти".
  4. В группе "Совпадения" определяемся с количеством замен в именах.



Удаление

Для удаления в средине имени части текста создаем такое правило.

  1. Из списка названий правил выбираем "Удалить".
  2. В поле "Начиная с" определяем позицию, с которой необходимо начать удаление текста в имени.
  3. В поле "До" определяем количество удаляемых в именах файлов символов.
  4. Для отключения выполнения действий с расширениями включаем действие "Пропускать расширения".
  5. Сохраняем правило, щелкнув кнопку "Добавить правило".



Создание числовых последовательностей (индексировать)

Иногда бывает необходимо изменить наименования файлов Имя1, Имя2, Имя3 так, чтобы их имена содержали числовую последовательность с определенным приростом, например, увеличиваясь на "5": Имя11, Имя26, Имя311. Процедура создания правила такова.

  1. Из списка названий правил выбираем "Индексировать".
  2. Выбираем вариант "Последовательно".
  3. Задаем начальное значение числовой последовательности: "Начать с:".
  4. В поле "Шаг" задаем прирост (шаг) числовой последовательности, с которым будет изменяться числовое значение.
  5. В поле "Куда вставить:" определяем место в имени файла, где будет вставляться числовая последовательность. При этом пользователь имеет возможность задать:
    • Позиция: определяется позиция, начиная с которой в имени файла будет вставляться число. Если, например, для нашего примера установить вторую позицию, то имена файлов будут таковы: И1мя1, И6мя2, И11мя3.
    • Префикс: в начале имени файла. В этом случае имена файлов будут представлять такую последовательность: 1Имя1, 3Имя2, 5Имя3.
    • Суффикс: в конце имени файла. Имена файлов будут такими: Имя11, Имя26, Имя311.
  6. Установка флажка для поля-метки "Дополнять нулями до:" позволяет задать одинаковое количество позиций для всех элементов числовой последовательности. Например, установив в данном поле значение "2" и задействовав вариант "Суффикс" для нашего примера получим такие имена: Имя101, Имя206, Имя311.
  7. Для отключения выполнения действий с расширениями включаем действие "Пропускать расширения".
  8. Сохраняем правило, щелкнув кнопку "Добавить правило".



Определение нескольких правил

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

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


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

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


И последнее. Переименование

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

И, наконец, последний шаг: непосредственно переименование. Щелкаем кнопку "Переименовать" и любуемся нашей работой, не забывая выразить респект автору за удобнейший и к тому же бесплатный инструмент.

И самое последнее. Как следует из аннотации к программе, пользователь имеет возможность работать с ID3v1, ID3v2 и EXIF, а также использовать пакетное переименование папок. А кроме этого, имеется множество пользовательских настроек шаблона переименования.

Валерий ФЕТИСОВ

Статьи по теме: