Programm oder Script gesucht was Verzeichniss- und Dateinamen bis 256 Zeichen auslesen kann.
Hallo Forenmitglieder,
ich suche ein Programm oder Script (Batch Datei) was in der Lage ist von einem Laufwerk z.B. C:\ oder Verzeichnis C:\Windows mir alle Verzeichniss- und Dateinamen nach einen Scann anzeigt welche z.B mehr als 250 Zeichen erhalten..
Die suche hier im Forum brachte leider keinen Erfolg.
Beispiele:
abcdefghij++++++++++++das sind jetzt 251 Zeichen++++++++++++++++++++++.doc
123456*das sind insgesamt 252 Zeichen?????.txt
12343456908765765445667**das sind insgesamt 254 Zeichen~~~~~~~~~~~~~.xls
primusvs_Bla_BLA_BLA_das soll ein Verzeichnisse sein mit insgesamt 253 Zeichen
Schöne Grüße
primusvs
ich suche ein Programm oder Script (Batch Datei) was in der Lage ist von einem Laufwerk z.B. C:\ oder Verzeichnis C:\Windows mir alle Verzeichniss- und Dateinamen nach einen Scann anzeigt welche z.B mehr als 250 Zeichen erhalten..
Die suche hier im Forum brachte leider keinen Erfolg.
Beispiele:
abcdefghij++++++++++++das sind jetzt 251 Zeichen++++++++++++++++++++++.doc
123456*das sind insgesamt 252 Zeichen?????.txt
12343456908765765445667**das sind insgesamt 254 Zeichen~~~~~~~~~~~~~.xls
primusvs_Bla_BLA_BLA_das soll ein Verzeichnisse sein mit insgesamt 253 Zeichen
Schöne Grüße
primusvs
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 116585
Url: https://administrator.de/contentid/116585
Ausgedruckt am: 22.11.2024 um 09:11 Uhr
11 Kommentare
Neuester Kommentar
Hallo primusvs!
Sollte eigentlich (als Standardwerk ) zu finden sein: Batch for Runaways - Part 1 - Beispiel: FindLongPath.Bat Bedenklich lange Pfade finden (obwohl: Biber hat ja die Angewohnheit, "Verzeichnis" nur mit einem "s" zu schreiben - vielleicht lag's daran ... )
Grüße
bastla
Sollte eigentlich (als Standardwerk ) zu finden sein: Batch for Runaways - Part 1 - Beispiel: FindLongPath.Bat Bedenklich lange Pfade finden (obwohl: Biber hat ja die Angewohnheit, "Verzeichnis" nur mit einem "s" zu schreiben - vielleicht lag's daran ... )
Grüße
bastla
Hallo primusvs,
Im Untershied zum Biber Tutorial hier eine Quick and Dirty Lösung ohne temporäre Datei.
Unklar ist ob du separat Pfad / Dateiname oder die Gesamtlänge meinst.
Gruß
LotPings
Edit Code angepasst
Im Untershied zum Biber Tutorial hier eine Quick and Dirty Lösung ohne temporäre Datei.
Unklar ist ob du separat Pfad / Dateiname oder die Gesamtlänge meinst.
:: LongPathFile.cmd:::::::::::::::::::::::::::::::::::::::::::::::::::
@Echo off
Setlocal EnableDelayedExpansion
set Log="%USERPROFILE%\Desktop\LongPathFileLog.txt"
Echo == %Date% == %Time:~,8% == %CD% == Check LongPathFile.cmd >>%Log%
:: Prüft ab aktuellem Verzeichnis
for /f "delims=" %%A in ('dir /B/S/A .') do (
set "A=%%~fA" & IF "!A:~251!" NEQ "" Echo/Full:%%~fA >>%Log%
set "B=%%~dpA" & IF "!B:~251!" NEQ "" Echo/DrPf:%%~dpA >>%Log%
set "C=%%~nxA" & IF "!C:~251!" NEQ "" Echo/NaEx:%%~nxA >>%Log%
)
Start Notepad %Log%
:: LongPathFile.cmd:::::::::::::::::::::::::::::::::::::::::::::::::::
Gruß
LotPings
Edit Code angepasst
Moin Lord,
Wohlgemerkt - das, was mit einem "Dir /b/s/a C:\." oder "Dir /b/s/a X:\." durchrauschen würde am CMD-Prompt, das würde on the fly als Inputstream auf Verarbeitung durch die FOR/F-Anweisung warten.
Das brachte seinerzeit bei meinen Spielversuchen ein kleines bisschen den Lüfter zum Aufjaulen.
Nichtsdestotrotz - eine "produktiv" eingesetzte Lösung würde sicherlich etwas schlanker aussehen können als das Tutorial von damals.
Grüße
Biber
eine Quick and Dirty Lösung ohne temporäre Datei.
wobei in dem speziellen Fall, für den die Tutorialvariante gedacht war ( komplettes Laufwerk oder Netzwerkshare) eine temporäre Datei schon sinnvoll ist.Wohlgemerkt - das, was mit einem "Dir /b/s/a C:\." oder "Dir /b/s/a X:\." durchrauschen würde am CMD-Prompt, das würde on the fly als Inputstream auf Verarbeitung durch die FOR/F-Anweisung warten.
Das brachte seinerzeit bei meinen Spielversuchen ein kleines bisschen den Lüfter zum Aufjaulen.
Nichtsdestotrotz - eine "produktiv" eingesetzte Lösung würde sicherlich etwas schlanker aussehen können als das Tutorial von damals.
Grüße
Biber
Zitat von @Biber:
Nichtsdestotrotz - eine "produktiv" eingesetzte Lösung würde sicherlich etwas schlanker aussehen können als das Tutorial von damals.
Hallo Biber,Nichtsdestotrotz - eine "produktiv" eingesetzte Lösung würde sicherlich etwas schlanker aussehen können als das Tutorial von damals.
das war keine Kritik, ich wollte halt nur herausstellen wie er was suchen kann - denn den Knackpunkt hab ich auf die Schnelle im Tutorial nicht gesehen, war am Notebook meiner Tochter mit winzigem bildschirm
Gruß
LotPings
Zitat von @primusvs:
Schön wäre natürlich noch, die Angabe des Pfades wo sich diese Verzeichnisse/Dateien befinden.
Meine Batchdatei schmeisst alle Pfade, Dateinamen und Pfadnamenkombinationen raus, die jeweils länger als 250 Zeichen sind. Ich ändere den Source jetzt nochmal so ab das sie Ausgabe in eine Datei erfolgt, die anschließend angezeigt wird. gestest hatte ich bei mir und das sogar on real hardware und nicht nur by brain Schön wäre natürlich noch, die Angabe des Pfades wo sich diese Verzeichnisse/Dateien befinden.
Gruß
LotPings
Das sollten die Zeilen 8 bis 10 eigentlich bereits tun.
Und bei meinen Tests hier klappt das auch.
Vielleicht schaust du dir die Bedeutung der Tilde Befehle in For /? oder Call /? nochmal an.
Gruß
LotPings
Und bei meinen Tests hier klappt das auch.
Vielleicht schaust du dir die Bedeutung der Tilde Befehle in For /? oder Call /? nochmal an.
Gruß
LotPings
Zitat von @primusvs:
Vielleicht schaust du dir die Bedeutung der Tilde Befehle in For /? oder Call /? nochmal an. = was soll mir das sagen. (keine Programmierkenntisse)
Damit rufst du in einem Cmd.exe Fenster die Hilfe zum For/Call Befehl auf.Vielleicht schaust du dir die Bedeutung der Tilde Befehle in For /? oder Call /? nochmal an. = was soll mir das sagen. (keine Programmierkenntisse)
Das ist auch für nicht-Programmierer sinnvoll.
Die 251 in deinem Script schient ja die Datei/Verzeichnislänge zu sein, kann ich diese verändern um eine andere Größe zu definieren z.B. 160
Meine Batch hatte sich genau nach deinen Vorgaben gerichtet. Natürlich kannst du die ändern unddu hast es ja schon erfolgreich probiert.
Gruß
LotPings