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 Skript suche Ordner in Unterordner

Mitglied: Eifeladmin

Eifeladmin (Level 1) - Jetzt verbinden

29.11.2013 um 19:17 Uhr, 3124 Aufrufe, 6 Kommentare, 1 Danke

Hallo Community,

ich versuche aktuell ein Skript zu schreiben dem ich einen Pfad übergeben kann und dies dann einen gestimmten String in den Ordner- Namen der Unterordner sucht, wurde der String gefunden soll in diesen Ordner ein Inhalt kopiert werden, danach soll weiter gesucht werden.
Ich hab aber leider überhaupt keinen Ansatz dazu, ich habe bis dato immer nur mit festen Pfaden gearbeitet und weiß nicht wie ich die Pfade einlesen könnte.
Was ich bis jetzt im Internet gefunden habe, war mir nicht so ganz klar.
Hat jemand von Euch eine Idee für mich wie ich das Problem umsetzten könnte?

Viele Dank und Grüße
EA
Mitglied: colinardo
29.11.2013, aktualisiert um 23:39 Uhr
Hallo EA,
Powershell-Variante:
Das Powershellscript wird dann folgendermaßen aufgerufen:
Es durchläuft alle Unterordner des Ordners und sucht nach dem Begriff der in der Variablen $suchbegriff steht. Wird dieser gefunden, wird der Inhalt den du in der Variablen $contentToCopy angibst in diesen Ordner kopiert.

Hinweis: Sollten Pfade in dem Suchordner mit dabei sein, welche die max. Zeichenzahl von 248 überschreiten wird das Script einen Fehler auswerfen. Leider hat hier blöder weise die Powershell bzw. das .NET-Framework eine Beschränkung eingebaut

p.s. wenn du noch nie mit Powershell gearbeitet hast, musst du einmalig den folgenden Befehl in einer PS-Console ausführen um PS-Scripte ausführen zu dürfen:
Alternativ eine Variante mit VB-Script:
Der Aufruf erfolgt hier folgendermaßen:
Du kannst dich hier entscheiden ob du nur eine einzelne Datei oder einen ganzen Ordner in den jeweiligen Zielordner kopieren willst Zeilen 12 oder 14. Dazugehörig die Zeilen 23/25 mit den jeweiligen Kopierbefehlen. Suchstring steht in Zeile 10.

Grüße Uwe
Bitte warten ..
Mitglied: bastla
29.11.2013, aktualisiert 02.12.2013
Hallo Eifeladmin!

Und als Batch (wenn tatsächlich alle Ordner unterhalb des Ausgangsordners - also auch Unter-Unterordner etc) berücksichtigt werden sollen, ungetestet etwa so:
Das "echo" vor dem "copy" simuliert (zum Testen) den Kopiervorgang nur, indem es den Kopierbefehl anzeigt - wenn Du es weglässt, wird tatsächlich kopiert. Die Ausgabe "1 Datei(en) kopiert." kannst Du übrigens mit einem ">nul" am Ende der Zeile verschwinden lassen.

Aufzurufen ist der Batch, wie gewünscht, mit Übergabe des Startordners als Parameter.

Sollte doch nur eine Unterordner-Ebene gemeint sein, die Zeile 5 durch
ersetzen.

Grüße
bastla
Bitte warten ..
Mitglied: Eifeladmin
02.12.2013 um 08:23 Uhr
Hallo colinardo
Hallo bastla

das ist ja wirklich super!
Vielen herzlichen Dank, ich hatte mit ein Tipps gerechnet aber fast fertige Skripts.
Das ist echt super, ich schau es mir gleich an.

Vielen vielen Dank.

Viele Grüße
EA
Bitte warten ..
Mitglied: derhoeppi
04.12.2013 um 09:30 Uhr
Hallo,

nachdem ich erst einen neuen Beitrag eröffnet habe und auf diesen verlinkt wurde, muss ich hier doch noch einmal nachfragen. Ich habe ein Problem beim Durchsuchen von Windows 7 Benutzerprofilen.
Folgende Schleife habe ich bisher in Verwendung:

FOR /F "Tokens=*" %%A in ('dir /B "%APPDATA%\Mozilla\Firefox\Profiles\*.default"') DO set FFPROFILE=%%A

Mein Problem ist nun das ich mit dem Skript nur den aktuellen Benutzer berühre. Da wir jedoch auf den Systemen multiuserfähig sein wollen, möchte ich ebenfalls alle Benutzerprofile erreichen. Ich habe mir nun eine vorgeschaltete Schleife vorgestellt, die mir alle Benutzerprofile mit den Ordnern \Mozilla\Firefox ausgibt und diesen String in den oben vorhandenen String übergeben. Habt ihr einen Tipp für mich?
Bitte warten ..
Mitglied: bastla
04.12.2013, aktualisiert 09.12.2013
Hallo derhoeppi!

Du kannst dafür (und auch für die "*.default"-Ordner) wie oben gezeigt eine "for /d"-Schleife verwenden:
Allerdings wirst Du entweder "delayedExpansion" oder ein Unterprogramm oder eine direkte Verarbeitung des gefundenen Pfades über die Varaible %%A benötigen ...

Grüße
bastla

[Edit] Überzähligen Apostroph (vor der schließenden Klammer) entfernt. [/Edit]
Bitte warten ..
Mitglied: derhoeppi
09.12.2013 um 06:59 Uhr
Hallo bastla,

vielen Dank. Ich werde die Schleife gleich einmal testen. Etwas ähnliches habe ich auch getestet, aber das Ergebnis war ähnlich der nun integrierten FOR-Schleife, obwohl es in anderen Benutzerprofilen ebenfalls *.Default-Ordner gibt.
Bitte warten ..
Ähnliche Inhalte
Microsoft Office
Excel Such- und Vergleichsfunktion
gelöst Frage von oesi1989Microsoft Office15 Kommentare

Hallo zusammen, ich habe 2 Tabellen mit Name, Vorname und Arbeitgeber. 1. Tabelle Name Vorname Geb-Datum Arbeitgeber Straße Ort ...

Exchange Server
Such-Index nach Neuerstellung defekt
Frage von CoverianExchange Server

Guten Morgen zusammen, wir haben hier aktuell ein Problem das mir schlaflose Nächte bereitet. Es handelt sich um einen ...

Exchange Server

Exchange 2019 Such-Indizierung funktioniert nicht

Frage von Dennis93Exchange Server5 Kommentare

Hallo zusammen, wir haben einen neuen Exchange 2019 in einer neuen Domäne installiert. Alles neu und sauber eingerichtet. Alte ...

Batch & Shell

Wlan-adapter such algorithmus in batch

gelöst Frage von TicoWriteBatch & Shell7 Kommentare

Hallo zusammen, Ich möchte einen Wlan-adpater such algorithmus in batch erstellen, dazu fehlt mir aber der befehl in Dos. ...

Neue Wissensbeiträge
Drucker und Scanner

Kyocera PCL Barcode Flash SD v3.0 Firmware Update installieren

Tipp von Mana vor 13 StundenDrucker und Scanner

Ich hatte eine vorhandene "PCL Barcode Flash SD v3.0 Type D/E", die bisher in einem Kyocera FS-4200DN verbaut war. ...

Sicherheit
0-day Schwachstelle im Internet Explorer
Information von kgborn vor 5 TagenSicherheit2 Kommentare

In Microsofts Internet Explorer gibt es eine 0-day Schwachstelle in der Scripting Engine, die faktisch alle Browser- und Windows-Versionen ...

Internet

Internet-Speedtest Automatisieren via Befehlszeile, cmd, Bash (Windows, Linux, FreeBSD, Mac)

Tipp von anteNope vor 5 TagenInternet6 Kommentare

Also das hier ist irgendwie an mir vorbeigegangen. Einfacher geht es schlicht nicht mehr. Mit "-s 28624 wähle ich ...

Administrator.de Feedback

Entwicklertagebuch: Codeblöcke auf unseren Seiten

Information von admtech vor 6 TagenAdministrator.de Feedback22 Kommentare

Hallo Administrator User, Unsere Codeblöcke werden ab sofort anders dargestellt. In Zukunft kommen neue Typen dazu. Hier ein Beispiel ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
WLAN Abbrüche
Frage von jo23487LAN, WAN, Wireless37 Kommentare

Hallo zusammen, ich habe einen neuen Speedport installiert und seit dem Abbrüche des WLANS. Eigentlich kann das mit dem ...

LAN, WAN, Wireless
Einrichtung Router und Modem
Frage von SommelierLAN, WAN, Wireless20 Kommentare

Guten Abend, sitze hier derzeit ohne Festnetzinternet, da ich einen neuen Router + Kabelmodem habe. Ein Bintec Rs123 und ...

Backup
Schnelles Backup- oder Synchronisierungsprogramm gesucht
Frage von DanielG1974Backup19 Kommentare

Hallo Leute. Ich bin für unsere kleine Firma seit Wochen auf der Suche nach einem Backup- bzw. Synchronisierungsprogramm. Ein ...

Windows Userverwaltung
Abfrage lokaler Gruppenmitgliedschaften in Windows - Bug umschiffen
gelöst Frage von DerWoWussteWindows Userverwaltung18 Kommentare

Moin Kollegen. Wer schon auf Betriebstemperatur ist und ein forderndes Problem sucht ;-) Mit dem Powershell-Kommando bekommt man normalerweise ...