Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Файловая система
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 05.06.2013, 15:27
RIONOMARU RIONOMARU вне форума
Прохожий
 
Регистрация: 05.06.2013
Сообщения: 1
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию оболочка для Powershell скрипта

Нужно написать оболочку для Powershell скрипта, который делает бэкап выбраной папки.
Оболочка должна иметь следующие функции: выбор папки для бэкапа и выбор места куда будет бэкапиться, а также вести лог-файл в *.txt.
Скрипт написан он это все делает сам, токо приходиться в ручную прописывать пути к папке и в место сохранения.
Оболочка должна сама переписывать пути в скрипте и запускать скрипт.
скрипт:
Add-PSSnapin Windows.Serverbackup
new-item -path e:\ -name ProfileBackup.csv -type file -force
$profiles = New-WBPolicy
$source = New-WBFileSpec -FileSpec "c:\Users"
Add-WBFileSpec -Policy $profiles -FileSpec $source
$target = New-WBBackupTarget -VolumePath "e:"
Add-WBBackupTarget -Policy $profiles -Target $target
Start-WBBackup -Policy $profiles
if ((Get-WBSummary).LastBackupResultHR -eq 0) {
$newname = "baskup_$(Get-Date -f dd.MM.yyyy)"
Ren e:\WindowsImageBackup -NewName $newname
$csv = Import-Csv e:\ProfileBackup.csv
$count = $csv.count
if ($count -gt 7) {
$old = $count - 7
$file = [System.IO.Path]::GetRandomFileName()
$csv | sort | select -First $old | %{
"delete shadows ID {$($_.SnapshotID)}" > $Env:TEMP\$file
diskshadow -s $Env:TEMP\$file
}
del $Env:TEMP\$file
}
$current = Get-WBBackupSet | select -Last 1 | select VersionID, SnapshotId
$csv += $current
$csv | sort | select -Last 7 | Export-Csv e:\ProfileBackup.csv -NoTypeInformation
} else {Send-mail -subj "Backup Report (SRV002 - Backup)" -body "Backup log" -AttachPath "e:\ProfileBackup.csv"
}
$LogName = "Application"
$Eventlog = gwmi Win32_NTEventlogFile -Filter "LogFileName = '$LogName'"
$Eventlog.BackupEventLog("E:\12\$LogName" + "_" + "$(Get-Date -Format dd.MM.yyyy).evt")
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 16:55.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter