Извините, что опубликовал это, у меня нет репутации, чтобы задать вопрос в комментариях к сообщению. Поэтому я прочитал это в ветке (см. Ссылку ниже) о том, как переименовать файлы с помощью Power Shell. Мой конкретный случай заключался в удалении персонажа в конце.

(Кстати, я не знаком с PowerShell, поэтому помилуйте меня за простой вопрос).

Как удалить одну и ту же часть имени файла для многих файлов в Windows 7?

Я использую его в первый раз и работал отлично. Во второй раз я получил следующее сообщение об ошибке:

Rename-Item : Cannot convert 'System.Object[]' to the type 'System.String' required by parameter 'NewName'. Specified
method is not supported.
At line:1 char:69
+ ... df | ForEach-Object { Rename-Item $_$_.name.replace("-Layout1", "") }
+                                                        ~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidArgument: (:) [Rename-Item], ParameterBindingException
    + FullyQualifiedErrorId : CannotConvertArgument,Microsoft.PowerShell.Commands.RenameItemCommand

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

Спасибо ребята, что сделали этот сайт отличным!

1 ответ1

2

Вы должны хотя бы опубликовать полную неудачную команду.

Из сообщения об ошибке я вижу, что между двумя $_$_ отсутствует пробел

Должно быть

... | ForEach-Object { Rename-Item $_ $_.Name.replace("-Layout1", "") }

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .