|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » PowerShell - Сортировка файлов по подстроке |
|
PowerShell - Сортировка файлов по подстроке
|
Новый участник Сообщения: 6 |
Доброго времени суток,
нужна помощь в написании скрипта. Ситуация такая: в каталог на сервере (к примеру, c:\obmen) выгружаются службой документы в формате: имя_файла.xml + папка с таким же именем и с вложениями. В файле имя_файла.xml есть строка с адресом (например, <Address=Иванов>). Нужно написать скрипт, который обходил бы все файлы .xml текущего каталога, искал в них строку с адресом (Иванов, Петров и др. - адрес уникален, количество и имена адресов известны) и, в зависимости от этой строки, перекладывал бы документ (.xml+одноименную папку с вложениями) в нужные подкаталоги (например, c:\obmen\Иванов, c:\obmen\Петров). Заранее благодарю за оказанную помощь. |
|
Отправлено: 21:41, 26-11-2012 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Busla, ну, коллега Kazun тут в общем-то, не при чём — что заказывали, таково было пожелание автора.
|
Отправлено: 13:58, 29-11-2012 | #11 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 6
|
Профиль | Отправить PM | Цитировать Всем еще раз привет,
хотелось бы домучить этот алгоритм до конца: проблем с неоднозначной интерпретацией искомого слова не будет (там идут сложные ID, которые не будут пересекаться, Иванов, Петров - это для общего понимания) но столкнулся с еще одной бедой: файлы и папки нужно было перемещать, а не копировать. думал, что можно просто сменить оператор copy на move и будет все отлично, но PS выдал ошибку. что тут нужно изменить для того, чтобы файлы (и папки) перемещались, а не копировались? примерно в таком виде это сейчас: cd C:\obmen Select-String -path *.xml -Pattern "Иванов|Петров|Сидоров" | Foreach { $dest = $_.matches[0].Value $fpath = $_.Path -replace "\.env" copy-item -Path $_.Path $dest Copy-Item -Path $fpath $dest -Recurse -Force } |
Отправлено: 17:46, 14-12-2012 | #12 |
Ветеран Сообщения: 1259
|
Профиль | Отправить PM | Цитировать Добавить команду Remove-Item $_.Path и Remove-Item $fpath -Force -Recurse
|
Отправлено: 13:27, 15-12-2012 | #13 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
CMD/BAT - Сортировка файлов по расширению | cyber_ua | Скриптовые языки администрирования Windows | 9 | 07-10-2012 23:16 | |
Разное - сортировка файлов в библиотеках | kekeke-kun | Microsoft Windows 7 | 3 | 16-07-2012 01:24 | |
Интерфейс - [решено] Сортировка файлов в проводнике | maximkoff | Microsoft Windows 7 | 7 | 18-03-2012 00:33 | |
VBS/WSH/JS - [решено] VBS/WSH. Сортировка файлов по дате. | rancid | Скриптовые языки администрирования Windows | 3 | 23-07-2009 06:38 | |
CMD/BAT - Сортировка файлов | kt626 | Скриптовые языки администрирования Windows | 2 | 28-03-2009 10:47 |
|