Skip to content

Daniels Tagesmeldungen

Kleine IT-Episoden & das wahre Leben

  • Startseite
  • About me…
    • Lebenslauf
    • Weiterbildung
  • Disclaimer
  • Toggle search form

Dateien gleichen Namens mit Struktur kopieren

Posted on 7. Oktober 20135. Oktober 2013 By Daniel Lensing Keine Kommentare zu Dateien gleichen Namens mit Struktur kopieren

Aufgrund einer Fehleranalyse sollte eine Datei einer Software aus einer Ordnerstruktur kopiert werden. Leider kam bei der Suche nach der Datei heraus, dass sich in jedem Projektordner, welches diese Software anlegt, eine entsprechende Datei erzeugt wird.

Nun mussten alle Dateien kopiert werden, was mit dem selben Dateinamen leider nicht einfach möglich ist. Somit kam ich zu dem Schluss die Dateien mit der vorhandenen Ordnerstruktur kopieren zu wollen.

Da es sich um einige Projektordner handelte, wurde von mir das folgende Powershell-Skript entwickelt, welches die Datei mit der Ordnerstruktur zur Verfügung stellt

# Verzeichnis, ab dem Rekursiv nach der Datei gesucht wird
$Suchverzeichnis = "C:\Program files\Database\Log\Projects\"
 
# Datei, welche gesucht wird
$Datei = "start.act"
 
# Verzeichnis, wo die Daten erzeugt und kopiert werden soll
$Zielverzeichnis = "C:\analyse\"
 
#Dateiermittlung
$dat = Get-ChildItem -Path $Suchverzeichnis -Recurse -Include $Datei 
 
# Array erstellen
foreach ($file in $dat) {
 
     # Ermittelter Pfad & Dateiname in Kleinbuchstabeln wandeln
     $Objekt = ($file.Fullname).toLower()
 
     # Suchverzeichnis in Kleinbuchstaben wandeln
     $Startverzeichnis =$Suchverzeichnis.toLower()
 
     # Entfernung des Suchverzeichnis aus dem Array
     $Struktur = $Objekt.Replace($Startverzeichnis,"$null")
 
     # Entfernung des Dateinamens aus dem Array
     $Ordner = $Struktur.Replace($Datei,"$null")
 
     #Zusammensatzung für Skriptnutzung
     $Zielpfad = $Zielverzeichnis+$Ordner
 
     # Erstellung der Verzeichnisstruktur    
     New-Item $Zielpfad -itemtype directory -force  
 
     # Kopieren der Datei in die entsprechende Struktur
     Copy-Item ($file.fullname) -destination ($Zielpfad) -force
}

Mit dem Skript werden die benötigten Ordner angelegt und die ermittelten Dateien entsprechend kopiert, um das laufende System nicht zu stören.

Powershell

Beitrags-Navigation

Previous Post: Widget: Datei oder Ordner vom HomeScreen nutzen
Next Post: Admins setzen ihre AD-Passwörter selber

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Daniel Lensing

Ich betreibe diesen Blog, wo ich meine Erfahrungen aus der IT sowie dem damit verbundenen Berufsalltag dem Internet zur Verfügung stelle.

Zwischenzeitlich bringe ich auch noch die eine oder andere Gegebenheit aus meinem Offline-Leben zur digitalen Nutzung.

Follow us

  • rss
  • mail
  • twitter
  • instagram
  • xing
  • linkedin
  • mastodon

Kategorien

  • Allgemein (13)
  • Client (209)
    • Android (4)
    • Fedora (Linux) (4)
    • iOS (3)
    • Mac OS X (3)
    • Peripherie (4)
    • Ubuntu (Linux) (5)
    • Windows 10 (41)
    • Windows 11 (2)
    • Windows 7 (99)
    • Windows 8 (36)
    • Windows 8.1 (28)
    • Windows Mobile (2)
    • Windows Vista (64)
    • Windows XP (20)
  • Cloud (12)
    • Microsoft Azure (5)
    • Office 365 (7)
  • Fortbewegung (39)
    • Auto (13)
    • Bahn (13)
    • Beinarbeit (1)
    • Zweirad (12)
  • IT-Nachrichten (34)
  • Leben & Beruf (77)
    • Arbeitszimmer (2)
    • Gedanken (16)
    • Kino (3)
    • Lebensmittel & Essen (4)
    • Lesestoff (3)
    • Podcast (8)
    • Sport (1)
  • Lehren & Lernen (44)
    • Konferenzen (1)
    • Präsentation (1)
    • Zertifizierung (42)
  • Programme (306)
    • Android-Apps (21)
    • Eigene Tools (11)
    • iOS-Apps (1)
    • Office (82)
    • Patchday+Updates (68)
    • Software (141)
    • Spiele (3)
    • Windows Phone-Apps (2)
  • Programmierung (78)
    • AutoIT (1)
    • KiXtart (1)
    • PHP (2)
    • Power Automate (1)
    • Powershell (49)
    • VB.NET (7)
    • VBA (10)
    • VBS (10)
  • Server (138)
    • Citrix XenServer (2)
    • Exchange Server (25)
    • Lync Server (1)
    • System Center (4)
    • Windows Home Server (2)
    • Windows Server (87)
    • Windows Server 2012 (44)
    • Windows Server 2016 (11)
    • Windows Server 2019 (3)
  • Telekommunikation (29)
    • Festnetz (3)
    • Internet (6)
    • Mobilfunk (20)
  • Verkauf & Verlosung (1)
  • Web-Installationen (32)
    • Joomla (4)
    • MediaWiki (9)
    • phpMyAdmin (1)
    • Piwik (4)
    • Wordpress (19)

Copyright © 2023 Daniels Tagesmeldungen.

Powered by PressBook WordPress theme