Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst Dateien von der Quelle zum Ziel (eine Ebene höher) kopieren

Mitglied: darebo

darebo (Level 1) - Jetzt verbinden

11.07.2018 um 16:41 Uhr, 326 Aufrufe, 8 Kommentare

Hallo,

es gibt einen Quellbereich mit mehreren tausend Ordnern und Dateien z.B.:

C:\temp\Quelle\*\N

  • - steht für wechselnde, beliebige Ordner (z.B. GUID)

Bsp:
C:\temp\Quelle\0A519B3F-17C1-4264-88B7-550D47ECC903\N\*.*
C:\temp\Quelle\0A0554C4-7CD2-48D6-AB9B-5ACAA2E8B227\N\*.*
C:\temp\Quelle\0CBCA949-9E83-4119-B3CD-5B3BFB9D8488\N\*.*
C:\temp\Quelle\EB6B5212-1DEE-4FA7-B7D7-D32606B32D4D\N\*.*
usw.

Unterhalb des letzten Ordners befinden sich jeweils unterschiedliche Dateien/Dateitypen. Es sollen aber u.a. nur die .txt Dateien vom Quell- zum Zielbereich kopiert werden. Die Struktur des Quellbereiches soll nicht verändert werden.

Aktuell ist der Zielbereich leer. Der Zielbereich soll schlussendlich nach der Kopieraktion fast die ähnliche Struktur ( GUID\*.txt ) wie der Quellbereich haben. Der Zielbereich liegt speichermäßig aber völlig woanders und die Dateien sollen eine Ebene höher rutschen. Zum Testen habe ich daher den nachfolgenden Bereich gewählt.

C:\temp\Ziel\*\

  • - steht für wechselnde Ordner aus der Quelle (z.B. GUID)

So soll nach der Kopieraktion der Zielbereich aussehen.
Bsp.:

C:\temp\Ziel\0A519B3F-17C1-4264-88B7-550D47ECC903\*.txt
C:\temp\Ziel\0A0554C4-7CD2-48D6-AB9B-5ACAA2E8B227\*.txt
C:\temp\Ziel\0CBCA949-9E83-4119-B3CD-5B3BFB9D8488\*.txt
C:\temp\Ziel\EB6B5212-1DEE-4FA7-B7D7-D32606B32D4D\*.txt
usw.

Ich hoffe es ist einigermaßen klar beschrieben.

Einige Ansätze mit der for-Schleife habe ich gemacht. Scheitere aber beim Anlegen der Zielstruktur mit jeweils einen Unterordner weniger.

Danke vorab für die Unterstützung.
Mitglied: Tezzla
11.07.2018 um 17:04 Uhr
01.
foreach ($currywurst in (get-childitem "Root wo deine Zielordner liegen" -directory).fullname)
02.
{
03.
  robocopy "Quellverzeichnis wo deine TXT liegt" "$currywurst" pommes.txt
04.
}
Durchläuft das Zielverzeichnis "Currywurst" und kopiert in jeden Unterordner die "Pommes.txt".
Kommt das so ungefähr hin?

VG
Tezzla
Bitte warten ..
Mitglied: darebo
11.07.2018 um 17:16 Uhr
Sorry, ich glaube das passt nicht so. Die Zielstruktur gibt's es noch nicht. Diese soll sich wie weiter beschrieben aus Teilen der Quellstruktur zusammensetzen.

Aus dem Quellbereich sollen die fett markierten Ordner und die jeweils im letzten Unterordner (..\N\) befindlichen unterschiedlichen .txt Dateien an das Ziel kopiert werden:

C:\temp\Quelle\0A519B3F-17C1-4264-88B7-550D47ECC903\N\*.*
C:\temp\Quelle\0A0554C4-7CD2-48D6-AB9B-5ACAA2E8B227\N\*.*
C:\temp\Quelle\0CBCA949-9E83-4119-B3CD-5B3BFB9D8488\N\*.*
C:\temp\Quelle\EB6B5212-1DEE-4FA7-B7D7-D32606B32D4D\N\*.*
...

Zielbereich
C:\temp\Ziel\0A519B3F-17C1-4264-88B7-550D47ECC903\*.txt
C:\temp\Ziel\0A0554C4-7CD2-48D6-AB9B-5ACAA2E8B227\*.txt
C:\temp\Ziel\0CBCA949-9E83-4119-B3CD-5B3BFB9D8488\*.txt
C:\temp\Ziel\EB6B5212-1DEE-4FA7-B7D7-D32606B32D4D\*.txt

Daher müsste der Quellbereich eingelesen und nur der vorletzte Ordner (fett markierte) genommen werden und dieser Ordner im Zielbereich erstellt werden sowie die .txt Dateien dort hineinkopiert werden.
Bitte warten ..
Mitglied: colinardo
LÖSUNG 11.07.2018, aktualisiert um 18:18 Uhr
Servus,

Powershell (mit Kommentaren):
01.
# Quellordner
02.
$quelle = 'D:\quelle'
03.
# Zielordner
04.
$ziel = 'D:\ziel'
05.
# Schleife über die Ordner der Quelle
06.
gci $quelle -Directory | %{
07.
    # Zielordner festlegen
08.
    $target = "$ziel\$($_.Name)"
09.
    # Zielordner erstellen wenn er noch nicht existiert
10.
    if(!(test-Path $target)){md $target -Force | out-null}
11.
    #  Alle Textdateien aus dem Unterordner "\N" in die Zielstruktur kopieren
12.
    gci "$($_.FullName)\N" -Filter *.txt -Recurse -File | copy-item -Destination $target -Verbose
13.
}
oder Batch:
01.
@echo off
02.
set "quelle=D:\Quelle"
03.
set "ziel=D:\Ziel"
04.
for /d %%a in ("%quelle%\*") do (
05.
    if not exist "%ziel%\%%~nxa" md "%ziel%\%%~nxa" >nul
06.
    copy "%%~a\N\*.txt" "%ziel%\%%~nxa\"
07.
)
Grüße Uwe
Bitte warten ..
Mitglied: darebo
12.07.2018 um 15:11 Uhr
Hallo Uwe,

danke für die Beispiellösungen.

Die Batchlösung funktioniert einwandfrei.

Bei der Powershell-Lösung erhalte ich folgende Fehlermeldung:

Get-ChildItem : Es wurde kein Parameter gefunden, der dem Parameternamen "Directory" entspricht.
Bei Zeile:6 Zeichen:23

gci $quelle -Directory <<<< | %{

+ CategoryInfo : InvalidArgument: ( [Get-ChildItem], ParameterBindingException
+ FullyQualifiedErrorId : NamedParameterNotFound,Microsoft.PowerShell.Commands.GetChildItemCommand

Kann aber den Fehler nicht direkt auflösen. Hast du noch eine Idee?

Danke.

Grüße darebo
Bitte warten ..
Mitglied: colinardo
LÖSUNG 12.07.2018, aktualisiert um 15:48 Uhr
Zitat von darebo:
Bei der Powershell-Lösung erhalte ich folgende Fehlermeldung:
Kann aber den Fehler nicht direkt auflösen. Hast du noch eine Idee?
Ja eindeutig, du verwendest eine bereits sehr veraltete Powershell 2.0, die kennt die Parameter -Directory und -File noch nicht, lässt sich aber leicht für die PS2.0 umschreiben,

Gesamt dann so
01.
#Quellordner
02.
$quelle = 'D:\quelle'
03.
# Zielordner
04.
$ziel = 'D:\ziel'
05.
# Schleife über die Ordner der Quelle
06.
gci $quelle | ?{$_.PSIsContainer} | %{
07.
    # Zielordner festlegen
08.
    $target = "$ziel\$($_.Name)"
09.
    # Zielordner erstellen wenn er noch nicht existiert
10.
    if(!(test-Path $target)){md $target -Force | out-null}
11.
    #  Alle Textdateien aus dem Unterordner "\N" in die Zielstruktur kopieren
12.
    gci "$($_.FullName)\N" -Filter *.txt -Recurse | ?{!$_.PSIsContainer} | copy-item -Destination $target -Verbose
13.
}
Bitte warten ..
Mitglied: darebo
12.07.2018 um 16:18 Uhr
Powershell Version und deine Variante kann ich erst morgen prüfen.

Danke nochmals.
Bitte warten ..
Mitglied: darebo
13.07.2018 um 10:06 Uhr
Ja es lag an der Powershell Version (2.x).

Daher funktioniert jetzt deine Lösung bestens. Dafür Danke nochmal.

Wenn man noch mehr Dateitypen einschließen möchte, dann kann man die Zeile 12 auch mit folgende Code-Vorschlag ersetzen:

  1. Kopierfunktion mit mehr als nur einem Dateityp Filter
gci "$($_.FullName)\N" -include ('*.txt', '*.rtf') -Recurse | ?{!$_.PSIsContainer} | copy-item -Destination $target -Verbose
Bitte warten ..
Mitglied: colinardo
13.07.2018 um 10:19 Uhr
Rischtisch.
Bitte warten ..
Ähnliche Inhalte
Batch & Shell

Verknüpfung mittels Batch erstellen - Punkt in Ziel, Ziel ist ein Ordner

gelöst Frage von moses-southBatch & Shell5 Kommentare

Hallo Zusammen Ich habe folgendes Problem: Bei uns auf dem Fileserver wird für jedes Projekt, ein eigener Ordner mit ...

Batch & Shell

Automatisches Kopieren von Daten und Auslesen von Quell- und Zielpfade aus txt-Datei

gelöst Frage von Booster07Batch & Shell4 Kommentare

Hallo zusammen, folgende Problemstellung konnte ich leider nicht selbst lösen oder im Internet finden. Deshalb hoffe ich auf eure ...

Windows Server

Nur Rechte von Dateien synchronisieren, ohne Datei zu ändern am Ziel

gelöst Frage von PharaunWindows Server6 Kommentare

Hallo Miteinander, wir suchen nach einer Möglichkeit wie man ausschließlich die Rechte von Dateien / Ordnern zu synchronisieren, ohne ...

Router & Routing

2 Routen zu einem Ziel

Frage von chewbacca001Router & Routing10 Kommentare

Hallo zusammen - dies ist mein erster Post, wenn ich die Etikette hier verletze, bin ich im Voraus um ...

Neue Wissensbeiträge
iOS
WatchChat für Whatsapp
Tipp von Criemo vor 2 TageniOS3 Kommentare

Ziemlich coole App für WhatsApp User in Verbindung mit der Apple Watch. Gibts für iOS sowohl als auch für ...

iOS
IOS hat nen Cursor !!!
Tipp von Criemo vor 3 TageniOS5 Kommentare

Nette Funktion im iOS. iPhone-Mauszeiger aktivieren „Nichts ist nerviger, als bei einem Tippfehler zu versuchen, den iOS-Cursor an die ...

Off Topic
Avengers 4: Endgame - Erster Trailer
Information von Frank vor 5 TagenOff Topic2 Kommentare

Ich weiß es ist Off Topic, aber ich freue mich auf diesen Film und vielleicht geht es anderen hier ...

Webbrowser
Microsoft bestätigt Edge mit Chromium-Kern
Information von Frank vor 5 TagenWebbrowser5 Kommentare

Microsoft hat nun in seinem Blog bestätigt, dass die nächste Edge Version kein EdgeHTML mehr für die Darstellung benutzen ...

Heiß diskutierte Inhalte
Hosting & Housing
VMware VM mit über 1TB RAM für S4HANA
gelöst Frage von Leo-leHosting & Housing24 Kommentare

Hallo zusammen, wer hat Erfahrng und kann mir einen Tipp zum sizing von S4HANA Systemen geben? Wir möchten, zunächst ...

LAN, WAN, Wireless
WLAN und Ausmessung - Eine Glaubensfrage?
Frage von ptr2brainLAN, WAN, Wireless23 Kommentare

Liebe Experten, als Sys-Admin habe ich mir schon öfter die Frage gestellt, ob es sich beim Thema WLAN und ...

Drucker und Scanner
SW-Laserdrucker mit sechs Papierfächern gesucht
Frage von MOS6581Drucker und Scanner19 Kommentare

Moin, zur Abwechslung mal eine sonderbare Anforderung :) Ich suche einen S/W Laserdrucker (kein MFP), der sechs Papierfächer bzw. ...

Virtualisierung
Gebrauchte Server Hardware als Virtualisierungs-"Spielwiese"?
Frage von NixVerstehenVirtualisierung19 Kommentare

Einen wunderschönen guten Morgen zusammen, ich möchte mich gerne etwas tiefer mit dem Thema Virtualisierung beschäftigen und dazu ein ...