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

Dateinamen per Script anpassen

Frage Entwicklung Batch & Shell

Mitglied: Cracymike

Cracymike (Level 1) - Jetzt verbinden

17.07.2013 um 12:17 Uhr, 1357 Aufrufe, 3 Kommentare

Hallo ich habe ein Problem.

Mit folgendem Script möchte ich Dateinamen in einem Ordner Anpassen,
In der ersten For Schleife wird geprüft ob der Dateiname an einer bestimmten stelle ein Leerzeichen enthält das funktioniert auch problemlos,
die zweite For Schleife soll dann aus den Dateinamen die "ä,ö,ü" beseitigen und durch "ae,oe,ue" ersetze. Das funktioniert einfach nicht ich kann machen was ich will habe auch schon andere sachen getestet alles ohne erfolg. Was mach ich Falsch?

01.
 
02.
Set FS = CreateObject("Scripting.FileSystemObject") 
03.
StartOrdner = "17"  'Arbeitsplatz  
04.
Set Dateiauswahl = CreateObject("Shell.Application").BrowseForFolder(0,AuswahlTitel,16,StartOrdner)  
05.
set Ordner = Dateiauswahl.Self 
06.
Set folder =  FS.getfolder(Ordner.path) 
07.
 
08.
For Each FileName in Folder.Files 
09.
 
10.
if Left(right(FileName, 15), 1) <> " " then 
11.
	Prefix = Left(FileName, InStrRev(FileName, ".") - 11) 
12.
	Prefix2 = right(Left(FileName, InStrRev(FileName, ".") - 1),10) 
13.
	Postfix = Mid(FileName, InStrRev(FileName, ".")) 
14.
	NewName = Prefix & " " & Prefix2 & Postfix 
15.
 
16.
	If FS.FileExists(NewName) Then 
17.
       
18.
	Else 
19.
        FS.MoveFile FileName, NewName 
20.
		count = count + 1 
21.
	End If 
22.
 
23.
end if 
24.
 
25.
next 
26.
 
27.
For Each FileName in Folder.Files 
28.
    Alt = FileName 
29.
	Neu = FileName 
30.
    Neu = Replace(Neu, "ä", "ae") 
31.
    Neu = Replace(Neu, "ö", "oe") 
32.
    Neu = Replace(Neu, "ü", "ue") 
33.
     
34.
    If Alt <> Neu Then  
35.
        FS.MoveFile Alt, Neu  
36.
    End If  
37.
Next  
38.
 
39.
 
40.
msgbox "Aenderungen fuer Ordner:" & chr(13) & Ordner.path & chr(13) & "erledigt!" & chr(13) & count 
41.
 
42.
 
Schon mal im voraus Danke Danke Danke
Mitglied: colinardo
17.07.2013 um 12:28 Uhr
Hallo CracyMike,
kannst du z.B. so machen:
01.
    Neu = Replace(Neu, chr(228), "ae") 
02.
    Neu = Replace(Neu, chr(196), "Ae") 
03.
    Neu = Replace(Neu, chr(246), "oe") 
04.
    Neu = Replace(Neu, chr(214), "Oe") 
05.
    Neu = Replace(Neu, chr(252), "ue")  
06.
    Neu = Replace(Neu, chr(220), "Ue")
Grüße Uwe
gelöste Beitrage bitte auch als solche markieren.Danke
Bitte warten ..
Mitglied: MrNetman
17.07.2013 um 12:31 Uhr
Am eigenen Listing siehst du, das Format nicht stimmen kann. Ich wüsste auch nicht, was du willst.
Und dann gibt es noch die Groß- und Kleinschreibung und das ß.
Es gibt Codetabellen, die du sepiell nutzen musst.

30. Neu = Replace(Neu, "ä", "ae")
31. Neu = Replace(Neu, "ö", "oe")
32. Neu = Replace(Neu, "ü", "ue")

Gruß
Netman
Bitte warten ..
Mitglied: Cracymike
17.07.2013 um 13:02 Uhr
Danke jetzt hat es geklappt, Groß- Kleinschreibung kann ich vernachlässigen gibt nur Kleinschreibung , und das ß kommt auch nicht vor.
Bitte warten ..
Neuester Wissensbeitrag
Router & Routing

192.168er Adresse im öffentlichen Netz

(2)

Erfahrungsbericht von visco-c zum Thema Router & Routing ...

Ähnliche Inhalte
LAN, WAN, Wireless
Per Script auf UniFi-controller zugreifen und WPA2-Key ändern (11)

Frage von Winfried-HH zum Thema LAN, WAN, Wireless ...

Batch & Shell
gelöst Powershellscript zum konvertieren und anpassen einer XML für Elster Import (9)

Frage von Shaijan zum Thema Batch & Shell ...

Batch & Shell
gelöst PC nach einem Kopiervorgang herunterfahren - PowerShell Script? (4)

Frage von Stefan007 zum Thema Batch & Shell ...

Batch & Shell
Vergleich einer Zeichenfolge in zwei Dateinamen (1)

Frage von hongziehong zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Zusammenarbeit
Als Administrator im Großraumbüro (29)

Frage von Dopamin85 zum Thema Zusammenarbeit ...

Exchange Server
Test-ActiveSyncConnectivity Error nach neuem Zertifikat (22)

Frage von Driphex zum Thema Exchange Server ...

Hyper-V
HYPER V und USB (16)

Frage von Hendrik2586 zum Thema Hyper-V ...

SAN, NAS, DAS
Backupserver für KMU (14)

Frage von Leo-le zum Thema SAN, NAS, DAS ...