<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.itcollege.ee/index.php?action=history&amp;feed=atom&amp;title=PowerShell%3A_Backup_files_and_folders</id>
	<title>PowerShell: Backup files and folders - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.itcollege.ee/index.php?action=history&amp;feed=atom&amp;title=PowerShell%3A_Backup_files_and_folders"/>
	<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=PowerShell:_Backup_files_and_folders&amp;action=history"/>
	<updated>2026-06-21T20:14:23Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.45.1</generator>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=PowerShell:_Backup_files_and_folders&amp;diff=48764&amp;oldid=prev</id>
		<title>Khobemae at 17:28, 27 May 2012</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=PowerShell:_Backup_files_and_folders&amp;diff=48764&amp;oldid=prev"/>
		<updated>2012-05-27T17:28:11Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 20:28, 27 May 2012&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot;&gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;Source lang=&quot;powershell&quot;&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;#########################################################&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;#########################################################&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;#&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;#&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Khobemae</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=PowerShell:_Backup_files_and_folders&amp;diff=48763&amp;oldid=prev</id>
		<title>Khobemae: Created page with &#039;######################################################### # # Name: Backup.ps1 # Author: Kalju H6bem2e # Version: 0.1a # Date: 26.05.2012 # Comment: Teeb varu koopiad antud folde…&#039;</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=PowerShell:_Backup_files_and_folders&amp;diff=48763&amp;oldid=prev"/>
		<updated>2012-05-27T17:27:30Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;#039;######################################################### # # Name: Backup.ps1 # Author: Kalju H6bem2e # Version: 0.1a # Date: 26.05.2012 # Comment: Teeb varu koopiad antud folde…&amp;#039;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;#########################################################&lt;br /&gt;
#&lt;br /&gt;
# Name: Backup.ps1&lt;br /&gt;
# Author: Kalju H6bem2e&lt;br /&gt;
# Version: 0.1a&lt;br /&gt;
# Date: 26.05.2012&lt;br /&gt;
# Comment: Teeb varu koopiad antud folderist&lt;br /&gt;
# Main all muuta $strSourceFolder = Kust &lt;br /&gt;
#                $strDestinationFolder = Kuhu&lt;br /&gt;
# Idee tuli sellest, et kasutan PlayStation Portable consooli, ja mul on erinevad m2lukaardid kus on erinevad salvestatud failid (Save Folderid).&lt;br /&gt;
# Script, mis v6tab vastavast kaustas ja teeb kuup2evalise koopia m22ratud kausta.&lt;br /&gt;
#########################################################&lt;br /&gt;
&lt;br /&gt;
function DoSubFolders &lt;br /&gt;
{ &lt;br /&gt;
    param([object] $objSrcFolder, [object] $objDstFolder) &lt;br /&gt;
 &lt;br /&gt;
    $colSrcSubFolders = $objSrcFolder.SubFolders &lt;br /&gt;
 &lt;br /&gt;
    foreach($objSrcSubFolder in $colSrcSubFolders) &lt;br /&gt;
    { &lt;br /&gt;
        $strSrcSubFolder = $objSrcSubFolder.Path &lt;br /&gt;
        $strDstSubFolder = $strSrcSubFolder.Replace($strSourceFolder, $strDestinationFolder) &lt;br /&gt;
        if( -not $FSO.FolderExists($strDstSubFolder)) &lt;br /&gt;
        { &lt;br /&gt;
            $FSO.CreateFolder($strDstSubFolder) &lt;br /&gt;
            Write-Host &amp;quot;L6ime folderi $strDstSubFolder&amp;quot; &lt;br /&gt;
        } &lt;br /&gt;
        $objDstSubFolder = $FSO.GetFolder($strDstSubFolder) &lt;br /&gt;
        BackupFolder $objSrcSubFolder $objDstSubFolder &lt;br /&gt;
        DoSubFolders $objSrcSubFolder $objDstSubFolder &lt;br /&gt;
    } &lt;br /&gt;
} &lt;br /&gt;
&lt;br /&gt;
function BackupFolder &lt;br /&gt;
{ &lt;br /&gt;
    param( [object] $objSrcFolder, [object] $objDstFolder) &lt;br /&gt;
 &lt;br /&gt;
    $strSrcFolder = $objSrcFolder.Path &lt;br /&gt;
    $strDstFolder = $objDstFolder.Path &lt;br /&gt;
 &lt;br /&gt;
    $colSrcFiles = $objSrcFolder.Files &lt;br /&gt;
    $colDstFiles = $objDstFolder.Files &lt;br /&gt;
 &lt;br /&gt;
    foreach ($objSrcFile in $colSrcFiles) &lt;br /&gt;
    { &lt;br /&gt;
        $strSrcFile = $strSrcFolder + &amp;quot;\&amp;quot; + $objSrcFile.Name &lt;br /&gt;
        $strDstFile = $strDstFolder + &amp;quot;\&amp;quot; + $objSrcFile.Name &lt;br /&gt;
        if($FSO.FileExists($strDstFile)) &lt;br /&gt;
        { &lt;br /&gt;
            $objDstFile = $FSO.GetFile($strDstFile) &lt;br /&gt;
            $dtSrcFile = $objSrcFile.DateLastModified &lt;br /&gt;
            $dtDstFile = $objDstFile.DateLastModified &lt;br /&gt;
            $iSec = (New-TimeSpan -Start $dtDstFile -End $dtSrcFile).TotalSeconds &lt;br /&gt;
            if($iSec -gt 2) # lubab 2 sekundilise vahe kui on CD-lt v6i muult v2liselt kettalt&lt;br /&gt;
            { &lt;br /&gt;
                $FSO.CopyFile($strSrcFile, $strDstFile, $true) &lt;br /&gt;
                Write-Host &amp;quot;Kopeerisin faili $strSrcFile to $strDstFile&amp;quot; &lt;br /&gt;
                $script:iCopyCount++ &lt;br /&gt;
            } &lt;br /&gt;
        } &lt;br /&gt;
        else &lt;br /&gt;
        { &lt;br /&gt;
            $FSO.CopyFile($strSrcFile, $strDstFile, $true) &lt;br /&gt;
            Write-Host &amp;quot;Kopeerisin faili $strSrcFile to $strDstFile&amp;quot; &lt;br /&gt;
            $script:iCopyCount++ &lt;br /&gt;
        } &lt;br /&gt;
    } &lt;br /&gt;
 #Kui failid olemas siis kututab olemasoleva 2ra ja asendab uuega&lt;br /&gt;
    foreach($objDstFile In $colDstFiles) &lt;br /&gt;
    { &lt;br /&gt;
        $strDstFile = $objDstFile.Path &lt;br /&gt;
        $strSrcFile = $strSrcFolder + &amp;quot;\&amp;quot; + $objDstFile.Name &lt;br /&gt;
 &lt;br /&gt;
        if( -not $FSO.FileExists($strSrcFile)) &lt;br /&gt;
        { &lt;br /&gt;
            $FSO.DeleteFile($strDstFile) &lt;br /&gt;
            Write-Host &amp;quot;Kustutasin faili $strDstFile&amp;quot; &lt;br /&gt;
            $script:iDestDeletedCount++ &lt;br /&gt;
        } &lt;br /&gt;
    } &lt;br /&gt;
 &lt;br /&gt;
    DoSubFolders $objSrcFolder $objDstFolder &lt;br /&gt;
} &lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
function WaitKey &lt;br /&gt;
{ &lt;br /&gt;
    param( [String] $strPrompt = &amp;quot;Vajuta suvalist nuppu ... &amp;quot;) &lt;br /&gt;
    Write-Host &lt;br /&gt;
    Write-Host $strPrompt -NoNewline &lt;br /&gt;
    $key = [Console]::ReadKey($true)&lt;br /&gt;
    Write-Host &lt;br /&gt;
} &lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
# main &lt;br /&gt;
&lt;br /&gt;
$date = Get-Date -Format d.MMMM.yyyy &lt;br /&gt;
#Folder kust v6tta&lt;br /&gt;
$strSourceFolder      = &amp;quot;C:\DOS\&amp;quot; #siia pane oma kaust&lt;br /&gt;
#Kuhu kopeerib&lt;br /&gt;
$strDestinationFolder = &amp;quot;C:\Backup\$date\&amp;quot; #siia pane oma kaust&lt;br /&gt;
 &lt;br /&gt;
$iCopyCount = 0 &lt;br /&gt;
$iDestDeletedCount = 0 &lt;br /&gt;
 &lt;br /&gt;
Write-Host &lt;br /&gt;
Write-Host &amp;quot;Backing up &amp;quot; -NoNewline -ForegroundColor &amp;quot;White&amp;quot; &lt;br /&gt;
Write-Host $strSourceFolder -ForegroundColor &amp;quot;Cyan&amp;quot; -NoNewline &lt;br /&gt;
Write-Host &amp;quot; to &amp;quot; -NoNewline -ForegroundColor &amp;quot;White&amp;quot; &lt;br /&gt;
Write-Host $strDestinationFolder -ForegroundColor &amp;quot;Cyan&amp;quot; &lt;br /&gt;
Write-Host &lt;br /&gt;
 &lt;br /&gt;
$FSO = New-Object -COM Scripting.FileSystemObject &lt;br /&gt;
 &lt;br /&gt;
 #testib kas Folder kus v6tta on olemas, kui ei ole l6petab scripti&lt;br /&gt;
if( -not $FSO.FolderExists($strSourceFolder) ) &lt;br /&gt;
{ &lt;br /&gt;
    Write-Host &amp;quot;Viga: l2hte kasuta pole!&amp;quot; -ForegroundColor &amp;quot;Red&amp;quot; &lt;br /&gt;
    Write-Host &lt;br /&gt;
    Write-Host &amp;quot;V2ljume skriptist&amp;quot; &lt;br /&gt;
    WaitKey &amp;quot;Vajuta suvalist nuppu ... &amp;quot; &lt;br /&gt;
    exit &lt;br /&gt;
} &lt;br /&gt;
 #testib kas kausta kuhu kopeeritakse backup andmed on olemas, kui mitte siis kysib kas võib luua kausta&lt;br /&gt;
if( -not $FSO.FolderExists($strDestinationFolder) ) &lt;br /&gt;
{ &lt;br /&gt;
    Write-Host &amp;quot;Hoiatus: Sihtkoha kausta ei ole&amp;quot; &lt;br /&gt;
    $p = Read-Host &amp;quot;Kas loome selle ja j2tkame? (Y / N) &amp;quot; &lt;br /&gt;
    Write-Host &lt;br /&gt;
    if( $p.Substring(0, 1).ToUpper() -eq &amp;quot;Y&amp;quot; ) &lt;br /&gt;
    { &lt;br /&gt;
        $FSO.CreateFolder($strDestinationFolder) &lt;br /&gt;
    } &lt;br /&gt;
    else &lt;br /&gt;
    { &lt;br /&gt;
        Write-Host &amp;quot;V2ljume skriptist&amp;quot; &lt;br /&gt;
        WaitKey &amp;quot;Vajuta suvalist nuppu ... &amp;quot; &lt;br /&gt;
        exit &lt;br /&gt;
    } &lt;br /&gt;
} &lt;br /&gt;
 &lt;br /&gt;
$objSourceFolder = $FSO.GetFolder($strSourceFolder) &lt;br /&gt;
$objDestinationFolder = $FSO.GetFolder($strDestinationFolder) &lt;br /&gt;
 &lt;br /&gt;
BackupFolder $objSourceFolder $objDestinationFolder &lt;br /&gt;
 &lt;br /&gt;
if( ($iCopyCount -eq 0) -and ($iDestDeletedCount -eq 0) ) &lt;br /&gt;
{ &lt;br /&gt;
    Write-Host &lt;br /&gt;
    Write-Host &amp;quot;Folders are synchronized&amp;quot; -ForegroundColor &amp;quot;magenta&amp;quot; &lt;br /&gt;
} &lt;br /&gt;
else &lt;br /&gt;
{ &lt;br /&gt;
    Write-Host &lt;br /&gt;
    Write-Host $iCopyCount &amp;quot;Failid ja kaustad kopeeritud allikast sihtkohta&amp;quot; -ForegroundColor &amp;quot;magenta&amp;quot; &lt;br /&gt;
    Write-Host $iDestDeletedCount &amp;quot;Yleliigset kustutatud&amp;quot; -ForegroundColor &amp;quot;magenta&amp;quot; &lt;br /&gt;
} &lt;br /&gt;
 &lt;br /&gt;
WaitKey &amp;quot;Vajuta suvalist nuppu ... &amp;quot;&lt;/div&gt;</summary>
		<author><name>Khobemae</name></author>
	</entry>
</feed>