J3qx

information archive

copy network file

Posted by j3qx на Ноябрь 1, 2016

Copy_2014-06-10.ps1

 

#Копирование последнего созданного файла из точки А в точку Б, по маске имени.
#Powershell v3.0
#2014.06.10 Ver 1.1
#Borodin Nikita
cls
[Array[]]$arr = $null
[Array[]]$exist = $null
#Дата
$date = get-date
#Откуда копируем
$path_where = «c:\alfa-01\src»
#Куда копируем
$path_to = «c:\alfa-01\dst»
#Какой длины будет маска имени
$name_lenght = 10

$files = Get-ChildItem -Path $path_where -File | Select-Object FullName, Name, CreationTime

foreach ($file in $files)
{
$temp = $file.name
$temp = $temp.Substring(0,$name_lenght)
$arr += ,»$temp»
$temp = $null
}

Get-ChildItem -Path $path_to -File | ForEach-Object{$exist += ,$_.Name}

foreach ($name in $arr | select -Unique)
{
$backup = Get-ChildItem -Path $path_where -File | where {$_.name -like «$name*»}` | Sort CreationTime -desc | Select-Object Name,FullName,CreationTime -First 1

if ($exist -like $backup.Name)
{
$backup = $backup.name
Write-Host «$date $backup имеется в папке $path_to»
#Write-Output «$date $backup содержится $path_to» | Out-File -Append «C:\temp\Backup.log»
}
else
{
$backup = $backup.name
Copy-Item «$path_where\$backup» $path_to
Write-Host «$date $backup скопирован в папку $path_to»
#Write-Output «$date $backup скопирован в папку $path_to» | Out-File -Append «C:\temp\Backup.log»
}
}

Реклама

Добавить комментарий

Заполните поля или щелкните по значку, чтобы оставить свой комментарий:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход / Изменить )

Фотография Twitter

Для комментария используется ваша учётная запись Twitter. Выход / Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход / Изменить )

Google+ photo

Для комментария используется ваша учётная запись Google+. Выход / Изменить )

Connecting to %s

 
%d такие блоггеры, как: