Powershell: форматировать числа в именах файлов с помощью Rename-item? - PullRequest
0 голосов
/ 15 октября 2019

Я пытаюсь переименовать файлы в последовательности. Новое имя файла будет включать переменную, которая его отличает. Как мне отформатировать эту переменную так, чтобы она всегда состояла из 2 цифр?

Get-ChildItem *.jpg | %{$x=1} {Rename-Item $_ -NewName "FileName$x.jpg'; $x++}

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

Я новичок в powershell.

1 Ответ

1 голос
/ 15 октября 2019

И сага о переименовании продолжается. Выражения в качестве аргументов команды должны окружать их символом '()'.

Get-ChildItem *.jpg | 
  %{$x=1} {Rename-Item $_ -NewName ('FileName{0:d2}.jpg' -f $x++) -whatif } 

С -f, '0' - это первый элемент, затем '1' и т. Д.

'{0} - {1} - {2}' -f 1,2,3

Выпонадобится $ () для нескольких операторов:

Get-ChildItem *.jpg | 
  %{$x=1} {Rename-Item $_ -NewName $('FileName{0:d2}.jpg' -f $x; $x++) }
...