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

Korrektur aller falschen Dateinamen auf einem Laufwerk

Frage Entwicklung Batch & Shell

Mitglied: dctibi

dctibi (Level 1) - Jetzt verbinden

24.01.2012, aktualisiert 13.12.2013, 3313 Aufrufe, 5 Kommentare

http://support.microsoft.com/kb/320081/de zeigt, wie man z.B. Dateien mit einem ungültigen Namen im Win32-Namespace noch erreichen kann.

Hätte nun gerne eine Batch, die diese Leertasten vorne und hinten bei einem Dateinamen vernichtet oder durch ein Zeichen wie z.B. "_" ersetzt.

ich finde nur keine Lösung für eine for-schleife solche Dateien zu finden - das umbenennen etc. steht ja in der kb...

Hat jemand eine Idee?
Mitglied: Biber
LÖSUNG 24.01.2012, aktualisiert 13.12.2013
Moin dctibi,

was spricht denn dagegen, die Dateien mit der gleichen Syntax zu suchen mit der sie auch umbenennen würdest?

Also theoretisch z.B
dir "\\?\c:\* " /b /s

...um alle Dateien mit einem Leerzeichen am Ende des (Namens+Extension) zu finden?

Grüße
Biber
Bitte warten ..
Mitglied: dctibi
25.01.2012 um 21:21 Uhr
Klaro - Danke!

Tja, wenn man schon fragt, wie finde ich mit einer for-Schleife falsche Dateien... da hatte ich mich gedanklich verrannt. Die richtige Frage, die ich mir selbst stellen sollte: Wie findet man falsche Dateien (ohne dem Zwang nach For-Schleife). So, damit hier dann auch der thread gelöst ist, hier noch meine Idee:
01.
@echo off & setlocal 
02.
set "Basis=c:\seltsam" 
03.
echo Benennen nun ungueltige Dateien in "%Basis%" um - Endung ist dann .geloest 
04.
for /f "usebackq delims=" %%i in (`"dir "\\?\%Basis%\* " /b /s 2^>nul"`) do ( 
05.
	echo Datei %%i ist unglueltig... setze neuen Dateinamen... 
06.
	ren "%%i" "%%~ni.geloest" 2^>nul 
07.
	if errorlevel == 1 ( 
08.
                echo Datei "%%~ni.geloest" bereits vorhanden. Wird somit "%%~ni2.geloest" 
09.
  	       ren "%%i" "%%~ni2.geloest" 2^>nul 
10.
11.
12.
echo "Wenn Dateinamen nicht zu oft falsch vorkommen - dann sollte nun alles passen ;-)"
Wenn es keine Gegenstimmen gibt, wird dieser thread auf gelöst gesetzt. ok?
Bitte warten ..
Mitglied: Biber
LÖSUNG 25.01.2012, aktualisiert 13.12.2013
Moin dctibi,

Zitat von dctibi:
Wenn es keine Gegenstimmen gibt, wird dieser thread auf gelöst gesetzt. ok?
Hey, ich wäre der Letzte, der seine Stimme erhebt, um das Auf-Erledigt-Setzen eines Beitrages zu verhindern oder auch nur zu verzögern...

In vorauseilendem Dank habe ich dir deinen Schnipsel auch in Code-Formatierung gesetzt.
(wenn du "editierend" noch mal auf deinen Kommentar gehst, dann siehst du, wie einfach das geht).

Grüße
Biber
Bitte warten ..
Mitglied: dctibi
13.12.2013 um 17:10 Uhr
Tja, hatte mich damals nur zu früh gefreut: Habe Probleme, wenn z.B. die Datei mit einem Ausrufezeichen beginnt... Zum Erstellen solch einer Testdatei:


echo > "\\?\C:\TEMP\!!!problem!!! "

Nur eine Kleinigkeit fehlt also zu meiner Batch noch - kann wer helfen?
Bitte warten ..
Neuester Wissensbeitrag
Ähnliche Inhalte
Drucker und Scanner
Weiterdrucken nicht möglich kein speicherplatz mehr auf laufwerk (4)

Frage von Ghost108 zum Thema Drucker und Scanner ...

Sonstige Systeme
Batch Dateinamen zerlegen (5)

Frage von Mummel zum Thema Sonstige Systeme ...

Windows Systemdateien
Liste aller geschützten Ordner - Keine Berechtigung zum Zugriff

Frage von Highend01 zum Thema Windows Systemdateien ...

Heiß diskutierte Inhalte
Erkennung und -Abwehr
Virenschutz - Meinungen (25)

Frage von honeybee zum Thema Erkennung und -Abwehr ...

Windows 10
Welches OS für Firmengeräte? (17)

Frage von MarkusVH zum Thema Windows 10 ...

Server-Hardware
gelöst Erfahrungswerte Hardwaresupport physikalische Server (16)

Frage von Devilx zum Thema Server-Hardware ...

Exchange Server
SBS2011: POP3-Connector 10 MB Grenze Email Benachrichtigung (15)

Frage von bogi1102 zum Thema Exchange Server ...