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 IPWünsch Dir wasWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst Alle Dateien eines Typs in Unterordnern in ein anderes Verzeichnis kopieren, aber so, dass sie in einem einzigen Unterverzeichnis liegen

Mitglied: Julia1989

Julia1989 (Level 1) - Jetzt verbinden

02.04.2020, aktualisiert 16:06 Uhr, 558 Aufrufe, 26 Kommentare, 1 Danke

Hallo, ich habe folgendes Problem:

Ich habe viele *.php dateien, diese liegen in jeweils verschiedenen Unternordnern also C:\PfadZumOberverzeichnis\{A bis n}\ und mit ein paar Unterordnern, manchmal 2 manchmal 5 also \..\..\..\..\n\*.php - Ich möchte nun, dass
1. alle php Dateien aus dem allen Unterordnern NACH A\ gesucht werden und in das Verzeichnis \{A-n}\php kopiert werden (ich muss sie online hochladen, deswegen der Aufwand).

Wunderbar wäre es auch noch, wenn ich dann später die Dateien auch wieder per Batch oder Powershell-Script zurückkopieren könnte. also aus irgendeinem Ordner soll er
1. in allen (oben) vorhandenen Unterordnern ..\{A bis n}\(ab hier also\..\..\ suchen, ob eine Datei mit gleichem Namen vorhanden ist und diese dann ohne Rückfrage ersetzen.

Ich weiß, dass ich irgendwie dafür for Schleifen brauche, und Variablen festlegen muss. Wie kann ich denn unbestimmte Ordnerhierarchien festlegen? also \X\..\..\..\{A bis n} ist jetzt Variable irgendwas?

es ist relativ wichtig - wenn jemand eine gute Idee dazu hat, wäre ich ihm/ihr sehr verbunden.

Liebe Grüße an alle


PS:\{A bis n} steht nur für den Ordner, in dem die ganzen Unterverzeichnisse anfangen. Alles was ÜBER diesem Ordner ist, braucht nicht durchsucht zu werden.
Mitglied: 143728
02.04.2020, aktualisiert um 15:18 Uhr
Robocopy reicht in dem Fall völlig...
(ich muss sie online hochladen, deswegen der Aufwand).
Man könnte ja auch einfach winscp mit dem "synchronize" Befehl nehmen dann wäre ein extra umkopieren überflüssig.
Bitte warten ..
Mitglied: Julia1989
02.04.2020 um 15:22 Uhr
das geht leider nicht, weil es ein webformular ist, nicht auf einen Server. Ich probiere gleich robocopy mal aus, das wäre natürlich super wenn das gehen würde. /s /w:1 /r:1 - was bedeuten die parameter? und schon mal danke für die ganz schnelle hilfe
Bitte warten ..
Mitglied: 143728
02.04.2020, aktualisiert um 15:25 Uhr
Zitat von Julia1989:
/s /w:1 /r:1 - was bedeuten die parameter?
Öh, den Link von oben lesen kannst du nicht, da stehts ?!

usw....
Bitte warten ..
Mitglied: Pjordorf
02.04.2020 um 15:28 Uhr
Hallo,

Zitat von Julia1989:
das geht leider nicht, weil es ein webformular ist, nicht auf einen Server. Ich probiere gleich robocopy mal aus, das wäre natürlich super wenn das gehen würde. /s /w:1 /r:1 - was bedeuten die parameter? und schon mal danke für die ganz schnelle hilfe
Mal ein Robocopy /? in einer Komandozeile gemacht? Wirkt Wiunder...

Gruß,
Peter
Bitte warten ..
Mitglied: Julia1989
02.04.2020 um 15:46 Uhr
nein das hatte ich wohl wirklich eben übersehen. Ich habe noch ein anderes Problem, der Befehl funktioniert soweit erstmal. Das Problem ist, dass er dann die Struktur Ordner\Unterordner\..... auch im Ziel benutzt. Gibt es einen befehl, so das Kopieren AUS einer Hierarchie IN einen Ordner ohne Hieracrchie funktioniert? ich hatte schon in anderen Foren geschaut und ich hatte noch keine zufriedenstellende Lösung gefunden. Dem Rat von Pjordorf folgend habe ich mir mal die Hilfe von Robocopy angesehen und leider noch nichts gefunden.
Bitte warten ..
Mitglied: 143728
02.04.2020, aktualisiert um 16:15 Uhr
Zitat von Julia1989:
Das Problem ist, dass er dann die Struktur Ordner\Unterordner\..... auch im Ziel benutzt.

Dann solltest du auch gleich richtig fragen und nicht so:
Alle Dateien eines Typs in Unterordnern in ein anderes Verzeichnis kopieren, aber so, dass die Verzeichnisstruktur erhalten bleibt

Gibt es einen befehl, so das Kopieren AUS einer Hierarchie IN einen Ordner ohne Hieracrchie funktioniert?
Logo, Powershell z.B. so
Klar sollte dir aber hierbei sein das es bei Dateien mit dem selben Namen gezwungenermaßen zu Konflikten kommt wenn diese alle in einem Ordner landen sollen!
Bitte warten ..
Mitglied: Julia1989
02.04.2020 um 15:55 Uhr
ok, das wäre meine nächste frage. Es soll so aussehen: X:\A\1\2\3 -> Dateien *.php X:\A\php

mit PowerShell kenne ich mich so gar nicht aus, daher bin ich übrigens auch sehr dankbar, dass hier wirklich im Minutentakt geantwortet wird. Ich korrigiere den Fragetext, da hatte ich mich vertan.
Bitte warten ..
Mitglied: manuel-r
02.04.2020 um 15:55 Uhr
Klar sollte dir aber hierbei sein das es bei Dateien mit dem selben Namen gezwungenermaßen zu Konflikten kommt wenn diese alle in einem Ordner landen sollen!

Und, dass es beim zurück kopieren nicht wieder in die alte Hierarchie zurück geht. Denn woher soll das entsprechende Tool wissen in welchem Ordner eine Datei früher mal war?!
Bitte warten ..
Mitglied: Xerebus
02.04.2020 um 16:07 Uhr
Ich glaub ja es wäre prinzipiell nicht schlecht zu wissen was sie genau vor hat
Dann wäre die Lösung, die dann auch funktioniert sicher nicht so weit weg.
Bitte warten ..
Mitglied: Julia1989
02.04.2020 um 16:09 Uhr
das wäre dann der nächste Schritt. Ich hatte mir das so vorgestellt: Suche nach dem entsprechenden Dateinamen, in ALLEN Verzeichnissen \1\2\3 und sobald du einen treffer hast, ersetze diesen mit der ersten Datei, die du im Ziel (vom ersten Kopiervorgang) X:\A\php findest. A ist eine Variable, es gibt also A bis X, aber jede Datei die INNERHALB ihres Buchstabens liegt, kommt auch nur einmal vor.
Bitte warten ..
Mitglied: 143728
02.04.2020, aktualisiert um 16:17 Uhr
Zitat von Julia1989:

ok, das wäre meine nächste frage. Es soll so aussehen: X:\A\1\2\3 -> Dateien *.php X:\A\php
Code oben hast du übersehen?? Der macht das schon so wie du willst.
mit PowerShell kenne ich mich so gar nicht aus
Dann wirds Zeit sich damit auseinanderzusetzen.

Vielleicht erst mal genau nachdenken was du wirklich willst und dann erst schreiben.
Bitte warten ..
Mitglied: Julia1989
02.04.2020 um 16:14 Uhr
gern. Ich muss einfach die Dateien online auf eine Webseite hochladen, da werden sie gepatcht, und auswählen kann ich leider keine ganzen Ordner, sondern nur die Dateien - durch einen klassischen "Öffnen" Button, wo ich dann alle Dateien markieren kann. Ich hatte natürlich erst an eine Windows suche gedacht, das würde aber dazu führen, dass ich in dem Fall DOCH mehrere gleiche Namen hätte, weil index.php gibt es z.B nur einmal in Ordner A und den Unterordern 1,2,3.... etc, aber in B gäbe es auch eine index.php. Das heißt, ich kann leider nicht einfach alle Dateien auf einen Haufen über den Explorer zusammenkopieren und da es sich um knapp 100 Verzeichnisse handelt und auch in Zukunft so etwas anstehen wird, wäre eine generelle Lösung dafür recht hilfreich. Die hochgeladenen Dateien erhalte ich als ZIP zurück, ohne Hierarchie - da wäre ein automatisches kopieren zwar hilfreich, aber nicht so wichtig, wie das sortieren fürs hochladen. Das könnte ich dann noch händisch machen zur not.
Bitte warten ..
Mitglied: Julia1989
02.04.2020 um 17:18 Uhr
der Powershell befehl von oben funktioniert NICHT. Ich möchte Powershell sagen, dass der Name des Ordners C:\Users\x\Desktop\Hauptordner\UNTERORDNER\..\..\..\ dem Pfad C:\Users\x\Desktop\Hauptordner angefügt wird - also C.\Users\x\Desktop\x\Desktop\Hauptordner\Unterordner(n-fach)\php

wie kann ich das definieren? ich habe mich schon etwas belesen und viel gefunden zu dem Thema, aber die möglichkeit, eine bestimmte Stelle als Variable zu nehmen habe ich nicht gefunden. Ich hatte $x und $_ versucht, hatte aber nicht geklappt!
Bitte warten ..
Mitglied: Pjordorf
02.04.2020 um 17:35 Uhr
Hallo,

Zitat von Julia1989:
wie kann ich das definieren? ich habe mich schon etwas belesen und viel gefunden zu dem Thema, aber die möglichkeit, eine bestimmte Stelle als Variable zu nehmen habe ich nicht gefunden. Ich hatte $x und $_ versucht, hatte aber nicht geklappt!
https://www.script-example.com/powershell-basics

Gruß,
Peter
Bitte warten ..
Mitglied: Julia1989
02.04.2020 um 18:00 Uhr
Danke sehr, könnte mir trotzdem jemand helfen? ich hatte mir das jetzt so gedacht.

Das 1. Verzeichnis habe ich schon hinbekommen mit $quelle="C:\Users\Julia\Desktop\X\";
dann hatte ich versucht, diese zweite Variable über das Ergebnis der ersten Variable zu definieren $name="Get-ChildItem -Path $quelle";
das scheint leider nicht zu klappen.

Kann mir jemand die Lösung verraten? Ich bin auch ein Mensch, der sich gerne alles selbst beibringt und ich sehe schon, ich habe Powershell-Scripting doch sehr vernachlässigt, aber im Moment bräuchte ich einfach die Lösung

Ich hatte mir das so gedacht, dass EIN EINZIGER ORDNER (mit beliebigem Namen) also C:\a\b\c\d\e\$X\f\g eine Variable sein könnte..... wie hat das auszusehen? ich hatte mir die Seite, die Peter eben geschickt hatte auch natürlich etwas genauer angesehen aber die Lösung noch nicht gefunden.
Bitte warten ..
Mitglied: 143728
02.04.2020, aktualisiert um 18:56 Uhr
Zitat von Julia1989:

der Powershell befehl von oben funktioniert NICHT. Ich möchte Powershell sagen, dass der Name des Ordners C:\Users\x\Desktop\Hauptordner\UNTERORDNER\..\..\..\ dem Pfad C:\Users\x\Desktop\Hauptordner angefügt wird - also C.\Users\x\Desktop\x\Desktop\Hauptordner\Unterordner(n-fach)\php
Sorry aber du schwenkst dauernd hin und her!! Erst soll alles mit der originalen Ordner-Struktur in den anderen Ordner (was übrigens Robocopy bereits hervorragend erledigt), dann willst du erneut das alles aus den Unterordnern flach in einen einzigen Ordner kopiert werden soll, und jetzt wieder das erste?? Entscheide dich bitte !! Das gewünschte macht dir bereits der Robocopy Befehl und da ist nichts weiter nötig.

Wenn du das Robocopy mit der PS simulieren willst geht das nat. auch, ist aber je eigentlich nicht nötig
Bitte warten ..
Mitglied: Julia1989
02.04.2020 um 19:31 Uhr
ich sehe schon irgendwie erkläre ich wohl heute sehr schlecht. es gibt ja einen haufen quellen und einen haufen ziele.

c:\quelleA\ordner1{php1}\ordner2{php2} {Die dateien liegen in Ordner1 und/oder Ordner2} >> c:\qelleA\php (hier soll alles rein, was vorher in ordner 1 und 2 war und php dateien hat\
c:\quelleB\ordner1\{php3}ordner2{php4} {Die dateien liegen in Ordner1 und/oder Ordner2} >>c:\qelleB\php (hier soll alles rein, was vorher in ordner 1 und 2 war und php dateien hat\
c:\quelleC\ordner1{php5}\ordner2{php6} {Die dateien liegen in Ordner1 und/oder Ordner2} >>c:\qelleC\php (hier soll alles rein, was vorher in ordner 1 und 2 war und php dateien hat\

Das Ergebnis wäre dann
c:\qelleA\php{php1,php2}
c:\qelleA\php{php3,php4}
c:\qelleA\php{php5,php6}

Quelle und Ziel sind der selbe Ordner, es geht eben nur darum, in den UNTERORDNERN aufzuräumen. Wie nennt man so etwas genau?
Bitte warten ..
Mitglied: Julia1989
02.04.2020 um 21:04 Uhr
ich fühle, dass ich der Lösung schon ganz nahe bin. Was meint ihr?

$quelle = @("C:\Users\Julia\Desktop\X");
$name = Get-ChildItem -Name "C:\Users\Julia\Desktop\X\";
echo $name;
[array]$namever = @(foreach ($name in $name){
"C:\Users\Julia\Desktop\VTEExtensionencoded\" + "$name" + '\php\'
});
echo $namever;
ls "C:\Users\Julia\Desktop\VTEExtensionencoded\" -Filter *.php -File -recurse | copy-item -Destination "$namever" -verbose -Force
Bitte warten ..
Mitglied: 143728
02.04.2020, aktualisiert um 21:11 Uhr
Alter man kann sich auch einen abbrechen mit der Erklärung .... da ist der Corona-Virus ja noch harmlos dagegen
Bitte warten ..
Mitglied: Pjordorf
02.04.2020 um 22:33 Uhr
Hallo,

Zitat von Julia1989:
ich fühle, dass ich der Lösung schon ganz nahe bin. Was meint ihr?
Hast du wenigstens eine gute und funktionelle Datensicherung? Und Robocopy kann dir gar die eine Datei die du auf deine Platte hast unter den anderen 10 Millionen Dateien finden und kopieren. Einfach mal mit beschäftigen. Und Bedenke für was der Name steht "Robust File Copy" siehe auch mal hier https://en.wikipedia.org/wiki/Robocopy oder gar hier https://docs.microsoft.com/en-us/windows-server/administration/windows-c ...

Den Parameter /L solltest du dir angewönen sowie /Log: oder /Log+:

Gruß,
Peter
Bitte warten ..
Mitglied: Julia1989
03.04.2020 um 11:18 Uhr
ich habe zu dem <code><$quellen/code> noch eine Frage. Ich habe da 83 verzeichnisse in der Wurzel. Er soll einfach alle Verzeichnisse, die er findet in die Variable quellen schreiben. das sind eben leider nicht nur A B und C. wie kann er damit umgehen? ansonsten Danke, ich denke, das wird das sein wo nach ich gesucht habe. Bitte nicht so stürmisch, bei mir war es schon nachts um drei, (andere Zeitzone) da denkt man nicht mehr klar. Pjordorf - ja ich habe mehrere Backups von allen Daten sowie auf mehrere physische Geräte verteilt (andere Festplatte intern), NAS im RAID-Modus.... man hängt ja an seinem digitalen Leben. Und ja - ihr alle (nicht nur die beiden genannten) haben mir vor Augen geführt, wie mächtig doch Powershell und die Konsole allgemein ist, ich war bis jetzt eher ein GUI-Freak, bis ich merkte, dass man so nicht immer weiterkommt. Jetzt in der Kriese habe ich ja Zeit mich weiterzubilden.
Bitte warten ..
Mitglied: 143728
LÖSUNG 03.04.2020, aktualisiert um 13:39 Uhr
So dat war es von meiner Seite.

Tschö und blivet jesund.

#edit# typo's korrigiert.
Bitte warten ..
Mitglied: Julia1989
03.04.2020 um 13:06 Uhr
ok, er versteht leider das php nur als datei, nicht als Ordner und schreibt alles in den dateinamen "php".
Bitte warten ..
Mitglied: AnkhMorpork
03.04.2020 um 13:13 Uhr
<OT>
An dieser Stelle möchte ich meinen Respekt denjenigen zeugen, welche den Eingangspost verstanden haben!
</OT>
Bitte warten ..
Mitglied: 143728
03.04.2020 um 13:26 Uhr
Zitat von Julia1989:

ok, er versteht leider das php nur als datei, nicht als Ordner und schreibt alles in den dateinamen "php".
War nur ein Typo, wurde getestet geht hier einwandfrei ...
Bitte warten ..
Mitglied: Julia1989
04.04.2020, aktualisiert um 12:21 Uhr
Zitat von AnkhMorpork:

<OT>
An dieser Stelle möchte ich meinen Respekt denjenigen zeugen, welche den Eingangspost verstanden haben!
</OT>

ich auch, das Problem ist, dass ich schlecht erklären konnte was ich wollte deswegen auch ein ganz großes Danke an alle, die mir weitergeholfen haben - eine super Leistung! ich muss noch mal sehen, wo bei mir denn der Fehler ist, denn davon gehe ich auch aus. Wenn alle es probieren und es bei anderen geht, dann wird es ja nicht an euch liegen!

EDIT: Ja, es klappt jetzt bei mir einwandfrei! ich hoffe, ich kann mich irgendwann mal revanchieren
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Datei aus Verzeichnis auslesen?
gelöst Frage von freshman2017Batch & Shell4 Kommentare

Hallo Ihr! Ich wollte mir gerade mit nachfolgendem Batch Befehl: alle darin befindlichen Bilder auflisten. Ausgabe: Wie kann ich ...

Batch & Shell

Batch - IF - mehr als eine Datei eines bestimmten Typs

gelöst Frage von zimbosmurfBatch & Shell9 Kommentare

Hallo! Ich möchte in einer Batchdatei eine Datei eines bestimmten Typs verarbeiten. Hierfür hole ich mir mit for %%G ...

Batch & Shell

Verzeichnis u Verknüpfung durch BAT Datei erstellen lassen

Frage von lutzebutzeBatch & Shell10 Kommentare

Guten Tag liebe Foren Gemeinde, ich habe eine einfacher EDV Ordner Ablage und suche eine Möglichkeit manche Dinge zu ...

Batch & Shell

Batch Datei - Verzeichnis kopieren funktioniert nicht - nur Dateien

gelöst Frage von inspiratioBatch & Shell12 Kommentare

Hallo zusammen, ich habe eine Batch Datei erstellt wo die Unterverzeichnisse von A nach B kopiert werden sollen: echo ...

Neue Wissensbeiträge
Informationsdienste

Trump vs Twitter - Angriff auf die Meinungsfreiheit?

Information von Frank vor 7 StundenInformationsdienste1 Kommentar

Trump nutzt Twitter rege. Nach Hinweisen auf Falschbehauptungen drohte er dem Dienst. Was das bedeutet und die Konsequenzen dazu ...

Viren und Trojaner

Trendmicro Treiber erkennt Treibertestumgebung und verhält sich dann anders

Information von DerWoWusste vor 9 StundenViren und Trojaner

Wenn das stimmen sollte, haben wir einen dem Abgasskandal ähnlichen Fall.

Webbrowser
Mozilla Firefox 77 verfügbar
Information von Frank vor 1 TagWebbrowser

Mozilla hat Firefox Version 77 freigegeben. Neben Verbesserungen an "Pocket", einigen Sicherheitsupdates, einer bessere Übersicht für TLS-Zertifikate, wurde der ...

Informationsdienste

Beendet: Timo Wölken und Julia Reda reden jetzt live auf Twitch über Uploadfilter, Rezo, Trump und Twitter

Information von Frank vor 1 TagInformationsdienste

Wer Interesse zum kommenden Uploadfilter, Rezo, Trump und Twitter hat, kann nun unter twitch.tv der Diskussion beitreten: 03.06.2020 ab ...

Heiß diskutierte Inhalte
Netzwerkgrundlagen
Um welches Kabel handelt es sich?
gelöst Frage von Frodo.FFNetzwerkgrundlagen21 Kommentare

Hallo liebe Gemeinde, im neu erworbenen Haus, knapp 20 Jahre alt, sind im Heizungskeller als auch in den Räumen ...

Microsoft Office
Exchange Kennwort geändert
gelöst Frage von jensgebkenMicrosoft Office20 Kommentare

Hallo Gemeinschaft, habe mein Exchange Kennwort geändert - wo kann ich diese Kennwortänderung bei Outlook eintragen - bei Kontoeinstellungen ...

Hardware
Anschaffung neue USV
Frage von nachgefragtHardware19 Kommentare

Hallo Administratoren, für das Thema hätte ich gern Eure Meinungen. Wir haben bisher USV Einheiten (APC mit PowerChute) welche ...

Sicherheits-Tools
Passwortmanager DGSVO (Deutscher Anbieter - Hoster)
Frage von SoccerdeluxSicherheits-Tools18 Kommentare

Hallo zuammen, ich arbeite für meine Kunden auf unterschiedlichen Geräten / Notebooks. Ich ärgere mich jedesmal, das ich mein ...