2

У меня есть множество файлов .exe которые были переименованы в file1.exe , file2.exe и т.д. Когда вы смотрите на Подробности файла в Свойствах (в проводнике Windows), у него есть оригинальное имя файла в "Название продукта". Я пытаюсь найти способ пакетного переименования их всех обратно к названию продукта. Существуют инструменты, которые могут сделать это с изображениями, музыкой и т.д., Но я не могу найти ничего, что могло бы сделать это для приложений. Это было бы (довольно) просто, если бы был какой-то способ получить доступ к Свойствам → Подробности в контексте командной строки (пакета).

2 ответа2

5

Вы можете использовать PowerShell для этого.

$newname=(get-item .\file1.exe).VersionInfo.ProductName
Rename-Item .\file1.exe -NewName "$newname.exe"

РЕДАКТИРОВАТЬ:

Вот одна строка, которая должна выполнить то, что вам нужно:

(gci).name | Where-Object {$_ -like 'file*.exe'} | foreach { $name=(get-item $_).versioninfo.productname;rename-item $_ -NewName "$name.exe"}
1

чтобы сделать это как ProductName_ProductVersion.exe:

(gci -Path "E:\test" -Filter *.exe).FullName | %{$NewName = (Get-Item $_).VersionInfo.ProductName +"_" + (Get-Item $_).VersionInfo.ProductVersion;Rename-Item $_ -NewName "$($NewName).exe"}

и если вы хотите сделать его как ProductName_FileVersion.exe, просто замените ProductVersion на FileVersion в коде.

НЕ забудьте заменить E:\test на истинный путь

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