powershell путь:
get-childitem | where {$_.name -match 'JPG'} | %{rename-item -path $_ -newname "$($_.basename).jpg"}
Править: Требуемое объяснение
Получение-childitem во многом как старая команда 'dir'.
где на самом деле псевдоним для того, где - возражают, и фильтрация cmdlet
Знак процента (%) является псевдонимом для foreach-объекта cmdlet, который работает для цикла для каждого объекта, что он передается.
переименовывать-объект симпатичен сам объяснительный.:)
$ _ Вы видите, специальный символ для "ЭТОГО". "ЭТО" - любой объект, он продолжает работать в то время.
Так без обиняков:
"Получите файлы в текущей папке, которые содержат 'JPG'. Для каждого из тех переименуйте их с исходным базовым именем и добавьте '.jpg' в конец".
обновление: Споткнувшийся через ЭТО на stackoverflow. Похож на него, отвечал бы всем требованиям.
Возможно, вы могли бы использовать внешние команды (например, RESTART_PROGRAM
) для перезагрузки файлов конфигурации nagios каждый раз, когда новый файл XML запускает новый файл конфигурации хоста .
Для автоматизации вы можете использовать службу, которая проверяет новые файлы XML, и обработчик событий, чтобы использовать внешнюю команду RESTART_PROGRAM
.