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

Ordnernamen und Unterordnernamen automatisch kürzen

Frage Entwicklung Batch & Shell

Mitglied: Toweli

Toweli (Level 1) - Jetzt verbinden

04.11.2008, aktualisiert 23:12 Uhr, 10917 Aufrufe, 6 Kommentare

Hallo, ich suche ein Programm/Batch mit dem es möglich ist Ordnernamen, Unterordner, unter unter Ordner usw... automatisch kürzen zu lassen ich habe nun lange gegooglet und auch hier im Forum gelesen aber nicht derart gefunden, für Dateinamen gibt es sowas ohne Ende aber ich finde nichts für Ordner Namen...

Falls jemand solch ein Tool kennt oder eine Batch hat/machen könnte wäre ich sehr dankbar.


mfg Toweli


[Edit Biber] Titel "Ordnernamen und Unterordnernamen aufotmatisch kürzen " an dieser Stelle mit dem Fremdwort editiert.
Und nach "Batch & Shell" verschoben von "Tools & Utilities"[/Edit]
Mitglied: Jochem
04.11.2008 um 15:18 Uhr
Moin,
ein Verzeichnis ist aus der Sicht des BS doch auch nichts anderes, als eine Sonderform einer Datei. Also sollten dieselben Kriterien, die für Dateien gelten, doch auch für Verzeichnisse Anwendung finden können.

Gruß J chem
Bitte warten ..
Mitglied: bastla
04.11.2008 um 15:29 Uhr
Hallo Toweli und willkommen im Forum!

Wenn Du Dein Wunschergebnis beschrieben hättest, könnte hier schon ein Lösungsvorschlag stehen ...

Grüße
bastla
Bitte warten ..
Mitglied: Biber
04.11.2008 um 15:38 Uhr
Moin Toweli,

ich habe irgendwo mal für einen Arbeitskollegen eine Batchdatei zusammengeschreddert, die alle Ordner und Unterordnernamen auf jeweils ein Zeichen verkürzt.
Wenn Dir das ausreicht, dann bring ich das Teil mit, wenn ich den Kollegen mal wieder besuchen darf.

Wenn Du etwas anderes willst, dann versuche es mal zu beschrieben.

Grüße
Biber
Bitte warten ..
Mitglied: Toweli
04.11.2008 um 18:22 Uhr
Hallo Biber, wäre auf jedenfall schonmal nicht schlecht, mann kann es bestimmt umschreiben, dass es auf 24 Zeichen kürzt ;)
Ich habe mich vorhind auch nicht korrekt ausgedrückt, ich brauche ein Tool dass folgendes kann:

- Ordner inklusive aller Unterordner auf max. 24 Zeichen kürzt
- Dateinamen in einem Ordner inkl. aller Unterordner auf max. 24 Zeichen kürzt

logischerweise sollte der datei typ erhalten bleiben und die ersten 24 zeichen vom Orginal Datei Namen.

mfg Toweli
Bitte warten ..
Mitglied: Biber
04.11.2008 um 19:07 Uhr
Moin Toweli,

na ja, ich denke, gleich eine Batchdatei für diese Aufgabe wäre eventuell etwas übertrieben...

Als Zeile vom CMD-Prompt würde das hier reichen:
01.
setlocal enabledelayedexpansion & @for /R %i in (*.*) do @set "this=%~ni" & set "ext=%~xi" & @if "!this:~23,11!" NEQ "" @echo ren "%i" "!this:~0,23!!ext!"
...aber meinetwegen auch auf ein paar Zeilen breitgetreten:
01.
::---Snipp ShortenTo24.cmd 
02.
@echo off & Setlocal 
03.
for /R %%i in (*.*) do Call :ProcessFile "%%i" 
04.
goto :eof 
05.
 
06.
:ProcessFile Parameter1 ist der vollständige Dateiname 
07.
set "FileName=%~n1"  
08.
IF "%FileName:~23,11!" NEQ "" ECHO ren "%~1" "%FileNamethis:~0,23%%~x1"
[ungetestet]
Das gross geschriebene ECHO in dem Block :ProcessFile kann nach dem Testen entfernt werden.
Ich habe es auf DateNAMEN länger als 24 Zeichen bezogen (Länge der Extension NICHT eingerechnet).

Grüße
Biber

[Edit].... ach so ...Ordner ja auch...
Dann bitte als FOR-Anweisung diese hier verwenden:
Streiche. for /R %%i in (*.*) do Call :ProcessFile "%%i"
Setze: for /F "delims=" %%i in ('DIR /s /b *.*') do Call :ProcessFile "%%i"
Und vor das "*.*" ggf. noch das Startverzeichnis, z.B "D:\Test" setzen.
[/Edit]
[Edit2] @bastla "P.S.: @Biber: In Deinem Batch wäre die Schreibweise von "ProcessFile" in den Zeilen 3 und 6 noch anzugleichen ...
Danke für den Hinweis. Habe ich korrigiert. [/Edit]
Bitte warten ..
Mitglied: bastla
04.11.2008 um 23:12 Uhr
Hallo Toweli!

Da ja nicht auzuschließen ist, dass durch das Kürzen gleichnamige Ordner/Dateien entstehen würden, wird in dem folgenden Ansatz im Fall des Falles eine lfd Nummer zur Unterscheidung angefügt (wodurch allerdings die Namen wieder länger als 24 Zeichen werden können):
01.
@echo off & setlocal 
02.
set "Basis=D:\Startordner" 
03.
 
04.
set L1=%temp%\Liste1.txt 
05.
set L2=%temp%\Liste2.txt 
06.
set Nr=1000000 
07.
 
08.
if exist %L1% del %L1% 
09.
for /f "delims=" %%i in ('dir /s /b /ad "%Basis%"') do call :WriteDirName "%%i" 
10.
sort /R %L1% /O %L2% 
11.
for /f "tokens=1* delims=:" %%i in (%L2%) do call :ProcessName "%%j" 
12.
for /f "delims=" %%i in ('dir /s /b /a-d "%Basis%"') do call :ProcessName "%%i" 
13.
del %L1% 
14.
del %L2% 
15.
goto :eof 
16.
 
17.
:ProcessName 
18.
set "Name=%~n1" 
19.
set "Name=%Name:~,24%" 
20.
if "%~n1"=="%Name%" goto :eof 
21.
 
22.
set Nr= 
23.
:Check 
24.
if not exist "%~dp1%Name%%Nr%%~x1" goto :RenameIt 
25.
set /a Nr+=1 
26.
goto :Check 
27.
:RenameIt 
28.
echo ren %1 "%Name%%Nr%%~x1" 
29.
goto :eof 
30.
 
31.
:WriteDirName 
32.
set Nr+=1 
33.
>>%L1% echo %Nr:~-6%:%~1 
34.
goto :eof
Der Basisordner, unterhalb dessen die Kürzungen vorgenommen werden sollen, ist in Zeile 2 festzulegen.

Vielleicht etwas übervorsichtig ist das Bearbeiten der Ordnerstruktur "von unten" her - es werden (durch die umgekehrte Sortierung der gesamten Ordnerliste) zunächst die untersten Ebenen umbenannt - so sollte es nicht passieren, dass ein Ordner nicht gefunden wird, weil ein darüberliegender Ordner zwischenzeitlich bereits umbenannt wurde.

Auch in diesem Batch gilt übrigens: Durch das "echo" vor dem "ren" werden die Umbenennungsbefehle vorläufig nur angezeigt (und erst nach dem Entfernen des "echo" tatsächlich ausgeführt).

Grüße
bastla

P.S.: @Biber: In Deinem Batch wäre die Schreibweise von "ProcessFile" in den Zeilen 3 und 6 noch anzugleichen ...
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
String automatisch anpassen (erweitern oder kürzen)
gelöst Frage von CreatorXBatch & Shell9 Kommentare

Hallo an alle, folgendes Problem: Ich lasse in meinem Batchscript eine Textdatei Zeile für Zeile auslesen. Nun möchte ich ...

Windows Server
Word und Excel schließen sich automatisch kurz nach dem Öffnen
Frage von imebroWindows Server1 Kommentar

Hallo, zwar gibt es zu dem Thema schon ein paar Threads und Antworten, aber mein Problem lösen sie bisher ...

Batch & Shell
Ordnernamen aus Dateinamen erstellen
Frage von Dr.ByteBatch & Shell1 Kommentar

Hi Gemeinde, benötige ein kleines Tool. Es liegen ca 100 Dateien in einem Ordner. Ich bräuchte nun ein Tool ...

Batch & Shell
Umbenennen von Ordnernamen (anhand von Zeitstempel)
gelöst Frage von Zero90Batch & Shell7 Kommentare

Hallo, Es ist mal wieder so weit. Ich brauch wieder mal eure Hilfe. Momentan versuche ich eine Batch zu ...

Neue Wissensbeiträge
Windows 10

Autsch: Microsoft bündelt Windows 10 mit unsicherer Passwort-Manager-App

Tipp von kgborn vor 21 StundenWindows 102 Kommentare

Unter Microsofts Windows 10 haben Endbenutzer keine Kontrolle mehr, was Microsoft an Apps auf dem Betriebssystem installiert (die Windows ...

Sicherheits-Tools

Achtung: Sicherheitslücke im FortiClient VPN-Client

Tipp von kgborn vor 23 StundenSicherheits-Tools

Ich weiß nicht, wie häufig die NextGeneration Endpoint Protection-Lösung von Fortinet in deutschen Unternehmen eingesetzt wird. An dieser Stelle ...

Internet

USA: Die FCC schaff die Netzneutralität ab

Information von Frank vor 1 TagInternet3 Kommentare

Jetzt beschädigt US-Präsident Donald Trump auch noch das Internet. Der neu eingesetzte FCC-Chef Ajit Pai ist bekannter Gegner einer ...

DSL, VDSL

ALL-BM200VDSL2V - Neues VDSL-Modem mit Vectoring von Allnet

Information von Lochkartenstanzer vor 1 TagDSL, VDSL2 Kommentare

Moin, Falls jemand eine Alternative zu dem draytek sucht: Gruß lks

Heiß diskutierte Inhalte
Windows Server
GPO nur für bestimmte Computer
Frage von Leo-leWindows Server13 Kommentare

Hallo Forum, gern würde ich ein Robocopy script per Bat an eine GPO hängen. Wichtig wäre aber dort der ...

Windows Server
KMS Facts for Client configuration
Frage von winlinWindows Server13 Kommentare

Hey Leute, wir haben in unserem Netz nun einen neuen KMS Server. Haben Bestands-VMs die noch nicht aktiviert sind. ...

Windows Tools
Software-Tool zum Entfernen von bösartigem Windows
Frage von emeriksWindows Tools11 Kommentare

Hi, siehe Betreff hat das jemals irgendjemand schonmal sinnvoll eingesetzt? (MRT) E.

Router & Routing
OpenWRT bzw. L.E.D.E auf Buffalo WZR-HP-AG300H - update
gelöst Frage von EpigeneseRouter & Routing11 Kommentare

Guten Tag, ich habe auf einem Buffalo WZR-HP-AG300H die alternative Firmware vom L.E.D.E Projekt geflasht. Ich bin es von ...