Sonderzeichen in Batch datei

Fragen zu allen anderen Programmiersprachen.
Gn00bi
Beiträge: 22
Registriert: 10.04.2007 16:00

Sonderzeichen in Batch datei

Beitrag von Gn00bi »

hallo ich hab ein problem:
ich möchte mithile einer batchdatei eine txt datei löschen. Diese liegt aber in einem verzeichnis, wo sonderzeichen wie ™ oder ö vorkommen.
wenn ich die batch datei dann ausführen will kommt immer pfad nicht gefunden.
sie sieht z.Z. etwa so aus:

Code: Alles auswählen

del "C:/datein/öh öm ™" a.txt
hoffe mir kann jemand helfen.

P.s. verzeichnis kann ich nicht umbennen!
Benutzeravatar
scholly
Beiträge: 793
Registriert: 04.11.2005 21:30
Wohnort: Düsseldorf

Re: Sonderzeichen in Batch datei

Beitrag von scholly »

Gn00bi hat geschrieben:wo sonderzeichen wie ™ oder ö vorkommen.
Versuch mal

Code: Alles auswählen

chcp 1252
del "C:/datein/öh öm ™" a.txt
Gn00bi hat geschrieben:verzeichnis kann ich nicht umbennen
Wo, bzw womit ? [Eingabeaufforderung (DOS-Window), PB, Explorer]
Ich bin blutiger PB-Anfänger.
seit 17.12.08: PB 4.3 unter XP Home(SP3)
Gn00bi
Beiträge: 22
Registriert: 10.04.2007 16:00

Beitrag von Gn00bi »

es komt auch nach dem chcp 1252 noch verzeichnis nicht gefunden.

also es ist ja eine .bat datei, die in der console(windows eingabeaufforderung) ausgeführt wird. Die Datei liegt nat. im explorer oder was meintest du jetz damit?
Benutzeravatar
scholly
Beiträge: 793
Registriert: 04.11.2005 21:30
Wohnort: Düsseldorf

Re: Sonderzeichen in Batch datei

Beitrag von scholly »

Das mit dem CodePageWechsel war nur eine spontane Idee, weil mir das auch mal weitergeholfen hat :oops:
Gn00bi hat geschrieben:ich möchte mithile einer batchdatei eine txt datei löschen.
Einmalig damit das Verzeichnis mit Inhalt weg ist oder immer wieder ?
Bei einmalig würd ich helfen, bis es wech is, ansonsten müßt ich die Segel streichen.

Womit/wie hast Du versucht das Verzeichnis umzubenennen ?
In der Eingabeaufforderung per "rename" ?
Im Explorer über die Verzeichniseigenschaften ?
Mit einem PurBasic-Proggi ?

Oder ist
P.s. verzeichnis kann ich nicht umbennen!
so zu verstehen, daß Du es nicht umbenennen darfst ?
Ich bin blutiger PB-Anfänger.
seit 17.12.08: PB 4.3 unter XP Home(SP3)
Benutzeravatar
helpy
Beiträge: 636
Registriert: 29.08.2004 13:29

Beitrag von helpy »

Versuche die Batch-Datei mal mit einem Editor zu bearbeiten, der den DOS-Zeichensatz der Konsole verwendet! Windows XP hat noch den MS-DOS-Editor edit.com dabei (im Verzeichnis C:\Windows\System32). Öffne mal damit Deine Batch-Datei und dann gib den Pfad noch mal richtig ein!

Oder nimm einfach PSPad! Dieser Editor öffnet Batch-Dateien gleich mit dem richtigen Zeichensatz.
Korrektur: Das stimmt nicht, man muss vor dem Laden der Batch-Datei den Zeichsatz OEM einstellen!

cu, helpy
Zuletzt geändert von helpy am 01.02.2008 10:41, insgesamt 1-mal geändert.
Windows 10
PB Last Final / (Sometimes testing Beta versions)
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Beitrag von Kiffi »

alternativ kannst Du Dir auch mit folgender Routine den DOS-Pfad
zurückgeben lassen und diesen dann in die Batch-Datei eintragen.

Code: Alles auswählen

Procedure.s GetShortPathName(Path.s)
  
  Protected ShortPathName.s
  
  ShortPathName = Space(255)
  GetShortPathName_(@Path, @ShortPathName, Len(ShortPathName))
  ProcedureReturn ShortPathName
  
EndProcedure

Debug GetShortPathName("D:\äöüß ordnername mit umlauten")
Grüße ... Kiffi
a²+b²=mc²
Antworten