Возникли проблемы с получением правильного синтаксиса команды. Нам нужно регулярно добавлять начальный ноль в пакет файлов в каталоге. Я не могу загрузить и установить элемент программного обеспечения для этого. Операционная система Windows-7. Длина имен файлов варьируется. например, от 000165-CityName1.pdf до 0000165-CityName1.pdf 000166-CityNameLonger2.pdf до 0000166-CityNameLonger2.pdf и т. д. Если вам нужна команда переименования, которая может сработать, может кто-нибудь предложить ее, будет признателен. Я попробовал полдюжины без успеха.
3 ответа
2
Этот сценарий powershell должен прекрасно работать, чтобы добавить 0 в начало каждого имени файла в папке. Сохраните этот скрипт как .ps1.
Get-ChildItem -Path "C:\temp\cityfiles\" | 
  Rename-Item -NewName {$_.BaseName.insert(0,'0') + $_.Extension}
Это берет каждый файл в папке cityfiles и добавляет '0' в начало каждого имени файла.
1
Хотя вы можете поместить это в bat-файл и поставить некоторые параметры и проверить, перейдите в командную строку cmd и перейдите в нужную папку
- ren .pdf 0.pdf
 
Добавит ноль перед именем для любого PDF
1
Как добавить ведущий ноль в пакет имен файлов?
Используйте следующую команду:
for /f %f in ('dir /b *.pdf') do ren "%f" "0%f"
Для использования в командном файле замените % на %%:
for /f %%f in ('dir /b *.pdf') do ren "%%f" "0%%f"
Пример использования:
F:\test\test>dir
 Volume in drive F is Expansion
 Volume Serial Number is 3656-BB63
 Directory of F:\test\test
24/06/2016  21:39    <DIR>          .
24/06/2016  21:39    <DIR>          ..
24/06/2016  21:38                 0 000165-CityName1.pdf
24/06/2016  21:38                 0 000166-CityNameLonger2.pdf
               2 File(s)              0 bytes
               2 Dir(s)  1,769,011,425,280 bytes free
F:\test\test>for /f %f in ('dir /b *.pdf') do ren "%f" "0%f"
F:\test\test>ren "000165-CityName1.pdf" "0000165-CityName1.pdf"
F:\test\test>ren "000166-CityNameLonger2.pdf" "0000166-CityNameLonger2.pdf"
F:\test\test>dir
 Volume in drive F is Expansion
 Volume Serial Number is 3656-BB63
 Directory of F:\test\test
24/06/2016  21:40    <DIR>          .
24/06/2016  21:40    <DIR>          ..
24/06/2016  21:38                 0 0000165-CityName1.pdf
24/06/2016  21:38                 0 0000166-CityNameLonger2.pdf
               2 File(s)              0 bytes
               2 Dir(s)  1,769,011,425,280 bytes free
Дальнейшее чтение
- Индекс AZ командной строки Windows CMD - Отличный справочник по всем вопросам, связанным с командной строкой Windows.
 - dir - Показать список файлов и подпапок.
 - for /f - Циклическая команда против результатов другой команды.
 - ren - переименовать файл или файлы.
 
