У нас есть список клиентов в папке "Клиенты" верхнего уровня в файлере. В папке "Клиенты" находятся действительные клиентские папки, некоторые с именным соглашением "client_test", другие "111_1111". Мне нужно отсканировать все подпапки для клиентов, которые будут иметь * _ [0-9], таких как клиент 111_1111, и заменить файл footer.jpg, если он составляет 4903 байта или меньше, новым footer.jpg. В основном, если клиент изменил нижний колонтитул по сравнению с оригиналом, мы хотим оставить его, но если нет, то он хотел бы перезаписать нижний колонтитул новым нижним колонтитулом. Любая помощь высоко ценится!
1 ответ
0
Если вы измените пути соответствующим образом, я думаю, что этот кусочек PowerShell поможет. Сначала проверьте, округляет ли это файлы, которые вы хотите заменить:
gci c:\Clients\*\footer.jpg |
?{($_.directory.name -match ''^\d+-\d+$') -and ($_.length -eq 4904)}
Если это работает, используйте следующее:
gci c:\Clients\*\footer.jpg |
?{($_.directory.name -match '^\d+-\d+$') -and ($_.length -eq 4904)} |
%{copy-item 'c:\NewArtwork\footer.jpg' "$($_.directory)\footer.jpg" -force}
- gci = Get-ChildItem
- ? = Где-Объект
- % = ForEach-Object
Кит