Alle dateinen gleiche endung im ordnern

Hallo, ich habe vor eine Batch File zu schreiben, welche alle Dateien in einem Ordner zählt: dir "c:\dein pfad" /s

Jetzt habe ich aber mehr als 10 Ordner (in verschiedenen Pfaden), dessen Inhalt gezählt werden sollen. Ich stelle mir das jetzt so vor:

Pfad 1: 6 Dateien Pfad 2: 7 Dateien Pfad 3: 1 Datei ... ...

Jetzt will ich am Ende einfach eine Variable (%zaehler%) haben, in welcher die Anzahl aller Dateien zusammen gespeichert ist (in diesem Falle: %zaehler%=14 Dateien)

(Wenn möglich, sollten die Dateien jedoch nicht angezeigt, sondern einfach nur gezählt werden. Kann mir da jemand helfen?)

3 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Alle dateinen gleiche endung im ordnern

@echo off
Setlocal EnableDelayedExpansion
set Counter=0
FOR /F "delims=" %%A IN ('dir /A /B /S "Pfad 1\*"') DO set /a Counter+=1
FOR /F "delims=" %%A IN ('dir /A /B /S "Pfad 2\*"') DO set /a Counter+=1
FOR /F "delims=" %%A IN ('dir /A /B /S "Pfad 3\*"') DO set /a Counter+=1
[...]
echo !Counter!
pause
exit

Alle dateinen gleiche endung im ordnern

Ordner makieren, Rechtsklick, Eigenschaften

Alle dateinen gleiche endung im ordnern

Also mit der CMD hast du dir ein Teil rausgesucht welches sau dumm ist und nix kann. Wieso versucht du es nicht mit Javascript oder so ?

Was möchtest Du wissen?

  • Circuit-Board »
  • Forum »
  • Main Board »
  • Hardware / Software Hilfe »

    Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

      • 1

      Windows 10: nur bestimmte Datei-Typen aus vielen Ordnern kopieren (+Ordner-Struktur erhalten)?

      20. Oktober 2020, 16:25

      Gibt's da einen Trick das zu bewerkstelligen?
      Leider ist der umgekehrte Weg (alles kopieren, dann mit der Suchleiste Dateityp löschen, den man nicht will) nicht möglich, da das Speichermedium nicht groß genug ist für alles...

      Danke im Voraus für Tipps.

      Alle dateinen gleiche endung im ordnern

      "I'm sure he's guilty but... he knows it. I mean, you're guilty, and you don't know it. So... who's really in jail?"
      Maynard James Keenan on Mr. Show

      • 2

      Schnelle Lösung:

      Erstelle dir im Editor (Notepad) eine Datei mit folgendem Inhalt (als Bsp. für .jpg- und .pdf-Dateien):

      Quellcode

      1. xcopy "C:\Users\NameXY\Desktop\*.jpg" "C:\Users\NameXY\Desktop\New" /y
      2. xcopy "C:\Users\NameXY\Desktop\*.pdf" "C:\Users\NameXY\Desktop\New" /y

      - "NameXY" usw. durch den korrekten Dateipfad auf deinem PC ersetzen

      Alle dateinen gleiche endung im ordnern

      - die Editordatei dann mit der Endung ".bat" abspeichern und durch Anklicken ausführen lassen

      - existiert das neue Verzeichnis noch nicht, fragt dich das System, ob es sich um eine Datei oder ein Verzeichnis handelt --> mit "V" bestätigen

      Alle dateinen gleiche endung im ordnern

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von n00b (20. Oktober 2020, 16:44)

      • 3

      Danke dir. Glaube darüber bin ich auch gestolpert online. Und dabei bleibt die Ordner-Struktur erhalten?

      (Kann es gerade nicht ausprobieren, weil das Speichermedium noch mit Dropbox synced)

      "I'm sure he's guilty but... he knows it. I mean, you're guilty, and you don't know it. So... who's really in jail?"
      Maynard James Keenan on Mr. Show

      • 4

      oder einfach nach dem dateityp gruppieren

      Klicken Sie mit der rechten Maustaste auf eine leere Stelle in diesem Ordner. Im Kontextmenü finden Sie einen Befehl Gruppieren nach. Wählen Sie dort (Keine), verschwindet die Gruppierung – und die Dateien werden wieder in Ihrer bevorzugten Sortierreihenfolge (nach Name, Typ oder Datum) angezeigt.

      Du musst nur den umgekehrten weg gehen

      Alle dateinen gleiche endung im ordnern

      • 5

      @lestat1780 Naja nee - wie gesagt, eine schnelle Lösung, bei der du die Quell- und Zielordnerpfade festlegen musst...

      Alle dateinen gleiche endung im ordnern

      Alle dateinen gleiche endung im ordnern

      • 6

      Ja, wie gesagt... Das Ziel ist, exakt die gleiche Ordner-Struktur (viele, viele Ordner + Unterordner) zu erhalten, aber nur bestimmte Dateitypen in den Ordnern zu erhalten.

      Hm... Ich könnte natürlich den ganzen Krempel erstmal auf eine externe Festplatte spiegeln und dann dort alles mit der Dateienden-Suche rauslöschen was nicht mit soll und dann auf den Stick... Mal gucken, ob ich irgendwo genug Platz hab.

      Mal wieder nicht lange genug nachgedacht bevor ich einen Thread eröffne...

      Alle dateinen gleiche endung im ordnern

      "I'm sure he's guilty but... he knows it. I mean, you're guilty, and you don't know it. So... who's really in jail?"
      Maynard James Keenan on Mr. Show

      • 7

      Wenn Du xcopy verwendest, wird genau die Struktur übernommen.

      Quellcode

      1. xcopy c:\users\blafasel\*.stl d:\gesammelte /s

      Das /y aus dem obigen Beispiel funzt nicht. Das y bedeutet automatische Bestätigung bei Überschreiben.

      Das nimmt alle STL-Dateien aus dem Ordner blafasel kopiert die mit dem Pfad in den Ordner gesammelte auf D:
      funzt.

      • 9

      Der von SonicSpeedMonkey gepostete Einzeiler geht rekursiv durch alle existierenden Ordner, kopiert die Ordnerstruktur und anschließend alle Dateien einer bestimmten Endung in eben diese neue Ordnerstruktur.

      Alle dateinen gleiche endung im ordnern

      • 10

      Kann man auch mit Powershell. Da gibt's nen Copy-Befehl der auch rekursiv durch alle Verzeichnisse geht. Aber ich kann sowas tatsächlich schneller in C# programmieren als mit Powershell. Hab nur jetzt keine Lust mehr. Wenn du bis morgen Mittag keine Lösung hast kann ich mich eben dran setzen.

      • 12

      ähm nein ... /S bedeutet nicht in allen Tools das Gleiche. /? hilft

      xcopy /? schrieb:

      /S Kopiert Verzeichnisse und Unterverzeichnisse, die nicht leer sind.
      /E Kopiert alle Unterverzeichnisse (leer oder nicht leer).

      durch den Filter des Dateityps (*.stl) und die Kombination /S werden nur Ordner erstellt die nicht leer sind, also *.stl enthalten.

      • 13

      Wie wäre es denn mit "den ganzen Ordner kopieren und alle Dateien AUSSER der gewünschten Dateiendung löschen"?

      Edit
      Zu dumm zum lesen. Moving on

      Alle dateinen gleiche endung im ordnern

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von SuperSpongo (20. Oktober 2020, 21:41)

      • 14

      Robocopy ist der modernere Befehl dafür, der macht alles was Du brauchst, exakte Ordnerstruktur mit Ausschlüssen oder eben ohne, genau wie man es benötigt! Ist auch ein Windows Tool. Xcopy ist veraltet.

      Hab jetzt spontan die Befehle nicht auf Tasche, müsste ich in meine Skripte gucken. Kann ich morgen gerne tun wenn gewünscht.

      Hier noch der passende Artikel dazu:
      wintotal.de/robocopy-der-kopier-gigant/

      So hier mal eine .bat wie ich sie selbst verwende:

      Quellcode

      1. @echo off
      2. ROBOCOPY E:\ Z:\DATEN\ /MIR /R:1 /W:1 /LOG:C:\DATEN.log /TEE /XD "System Volume Information" /XD "$Recycle.BIN"
      3. ATTRIB -R -H -S Z:\DATEN /S /D
      4. PAUSE

      Also mal der Reihe nach:
      1. Zeile ist klar
      2. Zeile kopiert er quasi den gesamten Inhalt des Laufwerks nach Z:Daten der Schalter /MIR spiegelt komplett, löscht qausi somit aber auch alles, was sich in dem Zielverzeichnis befindet was nicht identisch zur Kopie ist; Schalter /R definiert wie oft er versuchen soll eine Datei zu kopieren, die er im ersten Versuch nicht kopieren konnte steht bei mir auf eine Wiederholung; Schalter /W setzt genau bei R an und definiert die Zeit in Sekunden wie lange er für einen erneuten Versuch warten soll , ist bei mir genau 1 Sekunde... Schalter LOG erklärt sich selbst /TEE ist dafür da, das man es in der Konsole verfolgen kann /XD sind die Ausschlüsse von Ordnern!; möchte man Dateien müsste man z.B. anhängen /XF "*.mp3" Das würde jetzt alle MP3 Files der gesamten Aufgabe ausschließen. Den Attributsbefehl benötige ich nur in diesem speziellen Script, kann also ignoriert werden. und die Pause ist zum Schluss eingefügt, falls man nochmal durchscrollen möchte...

      So das wars von mir. Btw; die Datei selbst ist nur eine .bat.

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von _Alex_ (21. Oktober 2020, 11:15)

      • 15

      Also das cmd.exe-Fester läuft jetzt schon seit geraumer Zeit oldschool-mäßig über den Bildschirm... Es scheint zu funktionieren. Bin gespannt ob hinterher alles da ist wo es hingehört.
      Vielen Dank für die tollen Tipps.

      Alle dateinen gleiche endung im ordnern

      "I'm sure he's guilty but... he knows it. I mean, you're guilty, and you don't know it. So... who's really in jail?"
      Maynard James Keenan on Mr. Show

    • Circuit-Board »
    • Forum »
    • Main Board »
    • Hardware / Software Hilfe »

    Wie kann man Ordner zusammenführen?

    Wählen Sie die Ordner aus, die Sie zusammenfassen möchten. Es können nur Ordner der gleichen Ordnerebene ausgewählt werden. Wählen Sie im Menü Bearbeiten oder im Kontextmenü die Option Zusammenfassen. Die ausgewählten Ordner werden mit dem ersten ausgewählten Dokument in der Struktur zusammengefasst.

    Wie kann man alle Dateien umbenennen?

    Zusammenfassung.
    Starten Sie Windows Explorer. ... .
    Markieren Sie mehrere Dateien in einem Ordner. ... .
    Drücken Sie die Taste [F2], nachdem Sie die Dateien ausgewählt haben..
    Geben Sie den neuen Namen ein, und drücken Sie anschließend die [EINGABETASTE]..

    Wie funktioniert Rename?

    rename ist ein Programm für die Kommandozeile, das es ermöglicht, Dateien eines Ordners mithilfe der regulären Ausdrücke von Perl umzubenennen..
    Verschieben von Dateien in andere Ordner..
    Metadaten wie Autor, Erstellungsdatum o. Ä. ... .
    Dateien basierend auf anderen Dateinamen umbenennen..

    Wie kann ich Dateien Durchnummerieren?

    Um eine eigene Nummerierung zu bestimmen, schreiben Sie selbst die Startziffer in Klammern hinter den Dateinamen, zum Beispiel bild (10). Windows nummeriert die weiteren Dateien dann von Ihrer Startzahl ausgehend in aufsteigender Reihenfolge.