Powershell Script überwacht Ordner und kopiert wenn dieser Leer ist Dateien hinein
19.11.2010
16:52:34 Uhr5836 Aufrufe
1 Antwort
16:52:34 Uhr
1 Antwort
Noch nicht bewertet
Hi
Ich habe folgendes Problem http://www.administrator.de/Anzahl_bestim ... nun mit einem Powershell Script gelöst.
Zur verwendung dieses Scripts:
Ich habe einen Ordern in den Files zum importieren liegen. Leider habe ich 90000 Files die importiert werden sollen.
Durch die hohe Anzahl von Files benötigt der importer um die 10 Minuten um 1 File zu importieren.
Daher hier erst eine Abfrage wieviel Dateien im Ordner liegen.
Wenn dies 0 ist dann holt er sich die komplette Anzahl an Dateien und Selektiert dann soviel Files wie in der Variable angegeben.
Danach kopiert er diese Files in den Zielordner.
Die ausführung habe ich jetzt über die scheduled tasks gemacht.
Will am Montag noch einen Timer einbauen hatte jetzt aber kein bock mehr zu
Gruß
Sirbubu
Ich habe folgendes Problem http://www.administrator.de/Anzahl_bestim ... nun mit einem Powershell Script gelöst.
Zur verwendung dieses Scripts:
Ich habe einen Ordern in den Files zum importieren liegen. Leider habe ich 90000 Files die importiert werden sollen.
Durch die hohe Anzahl von Files benötigt der importer um die 10 Minuten um 1 File zu importieren.
Daher hier erst eine Abfrage wieviel Dateien im Ordner liegen.
Wenn dies 0 ist dann holt er sich die komplette Anzahl an Dateien und Selektiert dann soviel Files wie in der Variable angegeben.
Danach kopiert er diese Files in den Zielordner.
Die ausführung habe ich jetzt über die scheduled tasks gemacht.
Will am Montag noch einen Timer einbauen hatte jetzt aber kein bock mehr zu
01.
$destinationpath = "C:\ZielOrdner" 02.
$sourcepath = "C:\SourceOrdner" 03.
$NoFiles = "2" 04.
05.
$T = (Get-ChildItem $destinationpath).count 06.
07.
if ($T -eq $null) 08.
09.
{ 10.
$files= Get-ChildItem -name $sourcepath | select -First $NoFiles 11.
$files 12.
foreach ($File in $Files){copy-item ($sourcepath+$File) $destinationpath} 13.
} 14.
else 15.
{exit}Sirbubu
micneu schreibt am 19.11.2010 um 17:59:57 Uhr
Hallo Sirbubu,
habe mir erlaubt in dein script einen foulder check mit einzubauen.
gruß michael
habe mir erlaubt in dein script einen foulder check mit einzubauen.
01.
# ************************************************************** 02.
# foulder-check 03.
# 04.
# einmal auf der powershell ausgeführt werden 05.
# "Set-ExecutionPolicy Unrestricted" 06.
# ************************************************************** 07.
# 08.
# ************************************************************** 09.
# * Angepasst M.N. - POWERSHELL / Entwicklung 19.11.2010 * 10.
# * 11.
# ************************************************************** 12.
13.
$ErrorActionPreference = 'SilentlyContinue' 14.
15.
$destinationpath = "C:\Temp\11" 16.
$sourcepath = "C:\Temp" 17.
$NoFiles = "2" 18.
$fsw = New-Object System.IO.FileSystemWatcher 19.
$T = (Get-ChildItem $destinationpath).count 20.
$fsw.Path = $sourcepath 21.
$result = $fsw.WaitForChanged("All") 22.
$result 23.
24.
if ($T -eq $null) { 25.
$files= Get-ChildItem -name $sourcepath | select -First $NoFiles 26.
$files 27.
foreach ($File in $Files) { 28.
copy-item '$sourcepath\$File' '$destinationpath' 29.
} 30.
}gruß michael





