Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » PowerShell - Переименовать файлы XML

Ответить
Настройки темы
PowerShell - Переименовать файлы XML

Новый участник


Сообщения: 10
Благодарности: 0

Профиль | Отправить PM | Цитировать


Суть вопроса такова:
Имеются куча файлов XML. Необходимо переименовать файлы по содержимому, типа "0000000_2016-01-01.xml".

Содержимое находится по таким путям:
$sDateCreateDoc = $oXmlDocument.KPT.CertificationDoc.Date
$sCadastralNumber = $oXmlDocument.KPT.CadastralBlocks.CadastralBlock
CadastralNumber - Выглядит типа 00:00:0000000
# разбить кадастровый номер на подстроки по ":"
$sCadastralNumberSplit = $sCadastralNumber -split ':'
# в итоге имеем следующие переменные:
$Cad_Region = $sCadastralNumberSplit[0]
$Cad_Rayion = $sCadastralNumberSplit[1]
$Cad_Kvartal = $sCadastralNumberSplit[2]
Как это реализовать, подскажите?

Отправлено: 14:12, 12-03-2017

 

Пользователь


Сообщения: 102
Благодарности: 8

Профиль | Отправить PM | Цитировать


Цитата al-1k:
Осталось прикрутить что-нибудь, чтобы при дублирующихся файлах дописывалось "0000000-123_2016-01-01(2)" или вовсе удалялся дубль. Возможно? »
у меня реализовано таким образом:

Код: Выделить весь код
Write-Host "обратите внимание: такой файл уже имеется" -ForegroundColor Yellow
if (!(test-path "$PathOut\повторы")) {# создаем каталог если его нет
	new-item -path "$PathOut\повторы" -type directory -force | Out-Null
}
Remove-Variable Flag_ReName,NamePlus -ErrorAction SilentlyContinue
$NamePlus=1
$OutNamePovtor = $OutName.Substring(0,($OutName.Length -4)) # срезаем 4 символа с конца
While ($Flag_ReName -eq $null) { # пока флаг пустой проверяем существование файла и добавляем 1 к NamePlus
	if (!(test-path "$PathOut\повторы\$OutNamePovtor ($NamePlus)`.xml")) { # проверяем имеется ли файл в КОТОРЫЙ мы хотим переименовать
		$OutPath = "$PathOut\повторы\" # каталог назначения
		$OutName = "$OutNamePovtor ($NamePlus)`.xml" # формируем имя файла "что-то там-(номер)-разрешение"
		$Flag_ReName=$NamePlus
		move-item -path "$FileXmlCurrent" -destination "$OutPath\$OutName"
		if (test-path "$FileXmlCurrent`.sig") {# на случай присутсвия файла цифровой подписи
			$OutName = "$OutNamePovtor ($NamePlus)`.xml`.sig"
			move-item -path "$FileXmlCurrent`.sig" -destination "$OutPath\$OutName"
		}
	}
	else {
		$NamePlus++
	}
}

Отправлено: 09:42, 13-04-2017 | #11



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Новый участник


Сообщения: 10
Благодарности: 0

Профиль | Отправить PM | Цитировать


Цитата firstarey:
Последняя версия моего монстра
http://dumpz.org/2536094/ »
Вообще наверное круть))) Только непонятно что он делает. Предыдущий код я использовал для сортировки файлов

Цитата Iska:
чтобы при дублирующихся файлах дописывалось "0000000-123_2016-01-01(2)" или вовсе удалялся дубль. »
Повторяю: определитесь. »
В идеале было бы чтоб вовсе удалялся

Отправлено: 19:37, 15-05-2017 | #12



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » PowerShell - Переименовать файлы XML

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - [решено] Переименовать файлы в папке zion87 Скриптовые языки администрирования Windows 4 05-01-2020 01:11
VBS/WSH/JS - Переименовать файлы (заменить часть имени) Fresh96 Скриптовые языки администрирования Windows 4 15-01-2014 18:26
CMD/BAT - Переименовать и переместить файлы vider Скриптовые языки администрирования Windows 7 12-05-2013 16:35
Интерфейс - Переименовать файлы при совпадении Папуас Скриптовые языки администрирования Windows 2 19-10-2010 23:56
Как переименовать системные файлы Centrinar AutoIt 13 11-07-2010 21:54




 
Переход