Jump to content

Powershell Daten verschieben und umbenennen


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Hallo

 

Ich bin Powershell Neuling und muss ein Script schreiben das die unten angeführten

Bedingungen erfüllt. Ich habe versucht dies zu machen doch jetzt stehe ich an.

Bitte um Hilfe, Fehler aufweisen  und Tipps  :rolleyes:

 

#Wir haben einen Spirographen welcher seine Ergebnisse auf einen 

#lokalen Ordner ablegt. Da das Programm keinen Zugriff hat auf 

#diesen Ordner hat gehören die Daten verschoben. Die Aufgabe lautet baue ein 

#Script das alle Dateien im Ordner findet, danach umbennent in der Syntax  aktuelles 

#Datum,Spirograph, Dateierstellungsdatum, Laufende Nummer 

#(Beispiel DDMMYY_Probant_DDMMYY_LFnr bzw. 010817_Spirograph_010817_01) danach sollte 

#das Ganze in einen anderen Ordner kopiert werden auf einen anderen Rechner, sprich 

#beachte Zugriffrechte. Zusätzlich sollte im selben Ordner wo der Spirograph hin 

#schreibt die Datei kopieren in den Ordner Archiv. Das gesamte Script muss Silent 

#ausgeführt werden und bei einem Fehler dies in einer Datei ausgeben, dazu überlege 

#dir wie man das automatisiert das diese Daten Zeitnah übertragen werden.

 

 

$pfad = 'C:\Documents\TEST'

$Files = Get-ChildItem -Path $Path -Recurse -Include *.txt

 

foreach ($File in $Files){

 

    $OldPath = $File.FullName

    $Date = get-date -format 'M.d.yyyy '

    $OldDate = gci -file | select name,creationtime

 

 

    $NewName = $Date + ($OldPath.Substring($OldPath.Length - 7, 7)) + "$OldDate" + ' ';

 

    Rename-Item -Path $OldPath -NewName $NewName

}

 

$Copy = Get-ChildItem -Path $Path -Recurse -Include *.txt

foreach ($File in $Copy){

    Copy-Item $File C:\Documents\Test2

}

 

 

Danke schon im vorhinein :)  :jau:

bearbeitet von Highlyeducatedmen
Link zu diesem Kommentar

ja dachte ich mir auch nur leider hat das nach ein paar Änderungen nicht mehr funktioniert

auch nachdem ich den ausgangs zustand in dem es noch funktioniert hat wieder hergestellt hatte

hat es nicht mehr funktioniert :(

 

des halb dachte ich es findet hier jemand den(die) Fehler in meinem Script und könnte mir helfen  :rolleyes:

 

Mfg

Link zu diesem Kommentar

Dein Problem ist das Verständnis der Objekte mit denen du jonglierst. Da fehlen Dir die Basics. Da jedes Objekt anderst ist, musst du dich jedes mal auch dem anpassen. Sollte Dir nun jemand die Lösung posten, dann bringt dich das m. M. nach nicht weiter und du landest bei der kleinsten Veränderung wieder hier. 

 

Ein guter Anfang ist immer sich mal mit einem Befehl und dessen Ausgabe genauer auseinanderzusetzen. 

Get-ChildItem -Path "C:\Windows" -File | Get-Member 

"Get-Member" ist hierfür ein wichtiger Befehl für Dich um die "Eigenschaften und Funktionen" eines Objektes abzufragen. Das Ergebnis ist "System.IO.FileInfo". 

Link zu diesem Kommentar

Neben dem lernen der Grundlagen, was dir ja schon nahegelegt wurde, solltest du dich langsam an das Problem tasten.

Teil das Programm auf und mach ein Schritt nach dem anderen.

 

Du brauchst erstmal die einzelnen Teile der Datei:

 

aktuelles Datum,Spirograph, Dateierstellungsdatum, Laufende Nummer (Beispiel DDMMYY_Probant_DDMMYY_LFnr bzw. 010817_Spirograph_010817_01)

 

$date = Get-Date -Format 'ddMMyy'

$spirograph = $file.BaseName

$fileDate = Get-Date $file.CreationTime -f 'ddMMyy'

$i = # Woher nimmst du diese? Muss die je durchlauf eindeutig sein? Dann erstelle einen Zähler in der Schleife.

 

Dann kannst du den neuen Dateinamen zusammenbauen.

 

$newName = "$date_$spirograph_$fileDate_$i"

 

usw.

Link zu diesem Kommentar
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...