Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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

Zu lange Pfade und Dateien ausgeben

Frage Entwicklung Batch & Shell

Mitglied: hushpuppies

hushpuppies (Level 1) - Jetzt verbinden

25.04.2013 um 10:53 Uhr, 2798 Aufrufe, 2 Kommentare

Hallo beisammen,

ich kämpfe gerade mit einem kleinen Problem.
In einer unserer Außenstellen gibt es eine "gewachsene" Verzeichnisstruktur, die stellenweise sehr tief verschachtelt ist und auch ungewöhnlich lange Ordner-Namen beinhaltet.
Beim Wiederstellen einer Datei aus einer Sicherung habe ich festgestellt, dass dabei offenbar an manchen Stellen die 255-Zeichen Grenze überschritten wird und man daher ziemliche Probleme mit dem Zugriff auf diese Datei hat.

Ich bräuchte nun ein Script, welches rekursiv durch das Laufwerk wandert und mir den Pfad und die maximale Zeichenlänge des tiefsten Pfades z.B. in eine CSV ausgibt, damit ich die möglichen Problem-Ordner aussortieren und ggf. umbenennen kann.

Also quasi bei

Z:\blaqlbla\blalalfblal\blalblbala\hamptidampti\doofes_pdf.pdf eben den kompletten Pfad und die Zeichenlänge (also 49 in dem Fall)

Geht sowas überhaupt?
Hat sowas vielleicht einer schon mal gebraucht ?
Mitglied: Endoro
25.04.2013, aktualisiert um 17:05 Uhr
Hallo hushpuppies,

dieses Skript ist nicht das schnellste, wirft aber alle Pfadlängen vollständig aus. Ich hab's allerdings nicht an überlangen Pfaden getestet, das packt die Forschleife vielleicht nicht mehr.
01.
@echo off&setlocal  
02.
for /r %%i in (*) do ( 
03.
	for /f "delims=:" %%i in ('^(echo("%%~i"^&echo(^)^|findstr /o $') do set /a len=%%i-5 
04.
	setlocal enabledelayedexpansion 
05.
	echo !len! %%~i 
06.
	endlocal 
07.
)
Vielleicht hat ja jemand noch eine schnellere Lösung.

Gruss!


€dit: etwas mehr speed mit delayed expansion.
Bitte warten ..
Mitglied: hushpuppies
25.04.2013 um 18:25 Uhr
Vielen Dank!
Das ist schon sehr gut!
Sehr elegant und präzise


Ich habe nachdem ich den Beitrag gepostet hatte, über "ähnliche Inhalte" auch noch einen Beitrag gefunden, der mir vorher bei der Suche durch die Lappen gegangen ist.

Da wird das ganze per Batch gelöst:
http://www.administrator.de/wissen/workshop-batch-for-runaways-part-i-b ...

Nachteil bei dem Batch ist, dass Umlaute nicht erkannt werden und daher nicht mitgezählt werden.
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (20)

Frage von Xaero1982 zum Thema Microsoft ...

Outlook & Mail
gelöst Outlook 2010 findet ost datei nicht (19)

Frage von Floh21 zum Thema Outlook & Mail ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...

Festplatten, SSD, Raid
M.2 SSD wird nicht erkannt (14)

Frage von uridium69 zum Thema Festplatten, SSD, Raid ...