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 PowerShell und Get-ChildItem - Dateien eine Ebene höher schieben

Mitglied: zerberus

zerberus (Level 1) - Jetzt verbinden

06.10.2014 um 15:54 Uhr, 2485 Aufrufe, 3 Kommentare

Guten Tag,

ich habe folgendes Problem welches ich gerne mit PowerShell lösen möchte. In einem Ordner existieren 400 Ordner, jeweils mit einem Unterordner. Die Unterordner haben immer den Namen "NEF" für Nikon Electronic Format. In diesen Unterordnern liegen als meine NEF-Dateien und je ein Jpeg und XML-File. Diese Dateien sind immer wie der oberste Ordner benannt, also zum Beispiel "Urlaub Karibik 2014". Ich muss nun in jedem Ordner das XML und das JPEG eine ebene höher schieben, also raus aus dem Ordner NEF in den Ordner "Urlaub Karibik 2014". Wie kann ich das realisieren?

Vorab herzlichen Dank
Mitglied: colinardo
LÖSUNG 06.10.2014, aktualisiert 07.10.2014
Hallo zerberus,
nichts leichter als das
dir 'c:\bilderordner\*\NEF\*' -Include "*.xml","*.jpg" -Recurse | move-item -Destination {$_.Directory.Parent.FullName} -Force
Grüße Uwe
Bitte warten ..
Mitglied: kurbach
06.10.2014, aktualisiert um 16:19 Uhr
Hier mal einige infos, wie dus dir zusammenstückeln kannst:
Alles was du suchst findest du in diesem Beispiel:
http://gallery.technet.microsoft.com/scriptcenter/PowerShell-Rename-Fil ...
Das musst du nur noch weiter anpassen.
"rename-item" kannste vergessen, dein Befehl der Wahl lautet dann "move-item", das ziel lautet für jede datei "..\"
Damit sollteste dein skript schreiben können.
Hth,
Kay

~# get-help mi -examples
liefert in Beispiel 4 folgenden output:

C:\PS>get-childitem -path . -recurse -include *.txt | move-item -destination C:\TextFiles

Beschreibung
Mit diesem Befehl werden alle Textdateien aus dem aktuellen Verzeichnis und rekursiv aus allen Unterverzeichnissen in das Verzeichnis "C:\TextFiles" verschoben.
Im Befehl werden mit dem Cmdlet "Get-ChildItem" alle untergeordneten Elemente im aktuellen Verzeichnis (dargestellt durch den Punkt [.]) und dessen Unterverzeichnissen abgerufen, die die Dateinamenerweiterung "*.txt" aufweisen. Mit dem Recurse-Parameter wird ein rekursiver Abrufvorgang festgelegt, und mit dem Include-Parameter wird der Abrufvorgang auf Dateien im Format "*.txt" beschränkt.
Mit dem Pipelineoperator (|) werden die Ergebnisse dieses Befehls an Move-Item übergeben, mit dem die Textdateien in das Verzeichnis "C:\TextFiles" verschoben werden.
Wenn nach "C:\TextFiles" verschobene Dateien denselben Namen aufweisen, wird von Move-Item ein Fehler angezeigt und der Vorgang fortgesetzt, es wird jedoch nur eine Datei mit dem betreffenden Namen in das Verzeichnis "C:\TextFiles" verschoben. Die anderen Dateien verbleiben in ihren ursprünglichen Verzeichnissen.
Wenn das Verzeichnis "Textfiles" (oder ein anderes Element des Zielpfads) nicht vorhanden ist, tritt bei dem Befehl ein Fehler auf. Das fehlende Verzeichnis wird nicht erstellt, auch wenn Sie den Force-Parameter verwenden. Move-Item verschiebt das erste Element in die eine Datei mit dem Namen "Textfiles" und zeigt dann einen Fehler mit der Meldung an, dass die Datei bereits vorhanden ist.
Zudem werden mit Get-ChildItem standardmäßig keine versteckten Dateien verschoben. Um versteckte Dateien zu verschieben, verwenden Sie Get-ChildItem mit dem Force-Parameter.

get-help ist dein Freund ; )
Bitte warten ..
Mitglied: zerberus
07.10.2014, aktualisiert um 09:33 Uhr
Ich möchte mich an dieser Stelle ganz herzlich bei Euch beiden für eure Hilfe bedanken. Dies hat mir einige Stunden Arbeit gespart. Vielen Dank!
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Dateien eine Ebene höher
Frage von 918103Batch & Shell7 Kommentare

Hallo, habe diese Bat gefunden, aber diese funktioniert nur wenn ich im jeweiligen Ordner bin. for /d %%v in ...

Batch & Shell

Powershell Name des Childs bei Get-ChildItem anzeigen

gelöst Frage von reissaus73Batch & Shell2 Kommentare

Ich möchte aus der Registry Beispiel-Datensätze per PowerShell folgende Informationen auslesen und angezeigt bekommen. ProductName, Installationsdatum, XML-Version und natürlich ...

Batch & Shell

PowerShell-Script zur Abfrage mit get-childitem auf einer Freigabe beim Systemstart

gelöst Frage von harlekinBatch & Shell7 Kommentare

Hallo zusammen, ich habe ein PowerShell-Script das über eine GPO beim Computerstart ausgeführt wird. An einer Stelle soll die ...

Batch & Shell

Bestimmte Dateien aus Unterordner eine Ebene höher verschieben

gelöst Frage von OOmatrixOOBatch & Shell2 Kommentare

Hallo. Ich habe folgende Ausgangssituation: Hauptordner Ordner x Unterordner x Ordner y Unterordner y usw. Ich möchte nun die ...

Neue Wissensbeiträge
iOS
IOS 11.2.6 verfügbar
Information von sabines vor 4 StundeniOS

Mit dem Update soll der Bug behoben werden, bei dem eine bestimmte Zeichenkette IOS zum Absturz gebracht hat.

Sicherheit
Sicherheitsrisiko: Die Krux mit 7-Zip
Information von kgborn vor 19 StundenSicherheit2 Kommentare

Bei vielen Anwendern ist das Tool 7-Zip zum Entpacken von Archivdateien im Einsatz. Die Software ist kostenlos und steht ...

Internet

Datendealing im WWW Tracking Methoden immer brutaler

Information von sabines vor 1 TagInternet

Interessanter Artikel zum Thema Tracking im WWW und die immer "besseren" Methoden des Trackings. Professor Arvind Narayanan (Princeton-Universität) betreibt ...

Erkennung und -Abwehr

Ups: Einfaches Nullzeichen hebelte den Anti-Malware-Schutzt in Windows 10 aus

Information von kgborn vor 1 TagErkennung und -Abwehr

Windows 10 ist das sicherste Windows aller Zeiten, wie Microsoft betont. Insidern ist aber klar, das es da Lücken, ...

Heiß diskutierte Inhalte
Server
Route-Befehl Unterstützung (unter CMD)
gelöst Frage von FKRR56Server38 Kommentare

Guten Tag , i.M. habe ich Probleme über den CMD-Route-Befehl ein Routing auf einen entfernten Server zuzulassen. Der Server ...

LAN, WAN, Wireless
VPN Cisco ASA5505 PaloAlto PA-200
gelöst Frage von YannoschLAN, WAN, Wireless19 Kommentare

Hallo zusammen, ich würde gerne ein Site-to-Site VPN zwischen den beiden Standorten aufbauen. PaloAlto PA200 Internetanschluss Deutsche Telekom GK ...

Microsoft
TV-Tipp: Das Microsoft-Dilemma
Information von kgbornMicrosoft17 Kommentare

Aktuell gibt es in Behörden und in Firmen eine fatale Abhängigkeit von Microsoft und dessen Produkten. Planlos agieren die ...

Server-Hardware
Server für Exchange 2016, Kaufberatung
Frage von MazenauerServer-Hardware15 Kommentare

Guten Tag werte Gemeinde, Vorab: Ich dachte es gab mal einen separaten Bereich für solche Anfragen, habe ich leider ...