Пакетные файлы для удаления знака минус из имен файлов

Пакетные файлы для удаления знака минус из имен файлов

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

У меня есть несколько файлов с шаблоном -FileName.pdf, и я хотел бы удалить знак минуса в начале, чтобы у меня было просто FileName.pdf.

На данный момент у меня следующая команда:

dir /B > Batch.txt
for /f "tokens=1,2" %i in (Batch.txt) DO ren "%i %j" %l

Есть ли что-нибудь более простое, что я мог бы использовать?

заранее спасибо

решение1

Я бы хотел убрать знак минуса спереди

Используйте следующий пакетный файл:

@echo off
setlocal enabledelayedexpansion
for /f "tokens=*" %%i in ('dir /b -*.pdf') do (
  set _fname=%%i
  echo ren %%i !_fname:~1!
  )

Примечания:

  • Это удалит первый символ из всех имен файлов, соответствующих выражению -*.pdf.
  • Замените echo renна , renесли вы уверены, что пакетный файл будет переименован правильно.

Дальнейшее чтение

  • Индекс AZ командной строки Windows CMD- Отличный справочник по всем вопросам, связанным с командной строкой Windows.
  • реж- Отображение списка файлов и подпапок.
  • включеноотложенное расширение- Отложенное расширение приведет к тому, что переменные будут расширяться во время выполнения, а не во время анализа.
  • для /ф- Циклическая команда по результатам другой команды.
  • набор- Отображение, установка или удаление переменных среды CMD. Изменения, сделанные с помощью SET, будут сохраняться только в течение текущего сеанса CMD.
  • установитьлокальный- Установите параметры для управления видимостью переменных среды в пакетном файле.

решение2

я используюБесплатный Командир XEкоторый имеет полезную функцию группового переименования, позволяющую предварительно просмотреть результаты перед переименованием группы файлов с использованием шаблона.

Связанный контент