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

Frage Entwicklung Batch & Shell

GELÖST

Buchstaben in Strings auslesen und ändern

Mitglied: TobiisFreaky

TobiisFreaky (Level 2) - Jetzt verbinden

15.12.2008, aktualisiert 09:56 Uhr, 5484 Aufrufe, 3 Kommentare

Hallo Community,

ich habe eine vorhandene Batch-Datei, die mir alle Verzeichnisse einer Partition auflistet und in einer Text-Datei speichert. Beim Speichern (mehr als 255 Zeichen) werden alle Ä Ö Ü ß umbenannt in andere Zeichen, wie " (= ö)
Gibt es eine Möglichkeit diese Verzeichnisnamen so in eine TXT-Datei zu erfassen oder muss wirklich über eine 2. Batch "nachbesserungen" vorgenommen werden, indem die Sonderzeichen durch Ä Ü Ö etc umbenennt werden?
Es sind etwas mehr als 9000 Strings... die alle manuell zu ändern wäre etwas zeitaufwendig

Außerdem gibt es eine Möglichkeit wie man während einer Schleife (FOR /F) die Strings (in Variablen gesetzt) in "" setzen kann, somit Srings mit Leerzeichen auch erfasst werden und keine Abbruch erfolgt???
Also ich bin schon soweit gekommen und habe herausgefunden, dass FOR /F den String sich bis zu einem Leerzeichen merkt und danach in die nächste Zeile springt. Strings nach dem Leerzeichen werden nicht beachtet, auch wenn diese in "" gesetzt sind...


Mit freundlichen Grüßen

Tobi
Mitglied: bastla
15.12.2008 um 09:44 Uhr
Hallo TobiisFreaky!

Versuch es mit der folgenden Zeile am Anfang der ersten Batchdatei:
chcp 1252
Damit "for /f" Deine Strings nicht aufteilt, verwende
for /f "delims=" %%i in (...
Grüße
bastla
Bitte warten ..
Mitglied: Biber
15.12.2008 um 09:50 Uhr
Moin TobiisFreaky,

vermutlich fehlt in Deiner vorhandenen, aber momentan sehr schlecht lesbaren Batchdatei eine Umstellung auf den Windows.Zeichensatz (Befehl "CHCP 1252").
Und ja, soweit ich weiss, kann man/frau die Token einer FOR/F-Anweisung in Anführungszeichen setzen.
Hilfreich dabei wäre das Wissen, was in diesem Falle der Token ist.

Magst Du Deinen Schnipsel mal veröffentlichen oder geht das nicht, solange er dem Nobelpreiskomittee in Stockholm zur Prüfung vorliegt?

Grüße
Biber
Bitte warten ..
Mitglied: TobiisFreaky
15.12.2008 um 09:56 Uhr
haha

hier der Batch-Inhalt:

Hier die readDir.bat:
01.
DIR /s /b /ad E:\A62 > C:\readDIR_A62.txt

Und hier die Batch, die die ACL editieren soll:
01.
FOR /F "delims=" %%i IN (C:\readDIR_A62.txt) DO @cacls %%i /E /G BENUTZERNAME:F 
02.
pause
EDIT

ach wie blöd ich bin... delims hatte ich ja bereits in Verwendung, aber ich hätte mal besser ein paar Leerzeichen machen sollen grml..


01.
FOR /F "delims=   " %%i IN (C:\readDIR_A62.txt) DO @cacls "%%i" /E /G BENUTZERNAME:F 
02.
pause
Das ist der Code nun und er funktioniert.

Vielen Dank Jungs!

/EDIT
Mit freundlichen Grüßen

Tobi
Bitte warten ..
Ähnliche Inhalte
VB for Applications
Wie lese ich einen String nach einem mehrfach vorkommenden Buchstaben aus?
gelöst Frage von GERz0cKErZVB for Applications13 Kommentare

Hallo, um es zu verdeutlichen, ich möchte aus einen String (Bsp.: ich/bin/ein/string/blabla) die letzten Buchstaben auslesen in diesem Fall ...

Installation
AutoIT - Wie kann ich einen Buchstaben auslesen
gelöst Frage von TIM589Installation12 Kommentare

Ich habe folgenden Plan. Folgender Dienstplan soll jeden Monat automatisch in den Google Kalender eingetragen werden: Die unterste Spalte ...

Batch & Shell
String Zeichenpaare auslesen und bearbeiten
Frage von ahstaxBatch & Shell6 Kommentare

Moin, ich möchte gerne einen String der Form "41004800", der beliebig lang sein kann, in Zeichenpaare aufteilen, also in ...

C und C++
Anzahl der Buchstaben in einem String Element Array C++
gelöst Frage von ProtectedC und C++3 Kommentare

Hallo, ich benötige Hilfe. Ich möchte gerne in den jeweiligen Elementen die Anzahl der Buchstaben zählen. Ich hatte an ...

Neue Wissensbeiträge
Router & Routing

PfSense als Addon auf QNAP

Information von magicteddy vor 35 MinutenRouter & Routing

Moin, für Spielereien eine ganz nette Idee aber ich fürchte das soetwas auch als echte Firewall genutzt wird: In ...

Datenschutz

Teamviewer kommt für IoT-Geräte wie den Raspberry Pi

Information von magicteddy vor 7 StundenDatenschutz

Moin, jetzt werden IoT Geräte endgültig zur Wanze? Anscheinend kann man auf einem Dashboard seine Geräte visualisieren Ich stelle ...

Microsoft

Letzte Updates für Win10 und Server2016 müssen bei Bedarf über den Update catalogue in den WSUS importiert werden!

Tipp von DerWoWusste vor 12 StundenMicrosoft1 Kommentar

automatisch kommt da nichts an im WSUS und auch nicht im SCCM. Siehe Hinweise zum Bezug der jeweils neuesten ...

Linux

Meltdown und Spectre: Linux Update

Information von Frank vor 3 TagenLinux

Meltdown (Variante 3 des Prozessorfehlers) Der Kernel 4.14.13 mit den Page-Table-Isolation-Code (PTI) ist nun für Fedora freigegeben worden. Er ...

Heiß diskutierte Inhalte
Netzwerkmanagement
Preis für Wartungsvertrag ok?
gelöst Frage von a-za-zNetzwerkmanagement22 Kommentare

Hallo! Mal ne Frage, weil ich mich mit dem akzeptablen Preis für einen Reaktionszeitvertrag nicht auskenne. Meine Firma hat ...

Windows Netzwerk
Ist ein Portforwarding auf einen PC ohne lauschendes Programm ein (großes) Sicherheitsproblem?
Frage von PluwimWindows Netzwerk13 Kommentare

Hallo zusammen, zur Fernwartung eines Rechners an einem anderen Ort nutze ich VNC. Da dieser Rechner einfach nur eine ...

Windows Server
Terminal Server 2016 erkennt Berechtigungen nicht
gelöst Frage von Thomas2Windows Server10 Kommentare

Hallo Administratoren, folgendes Problem stellt sich dar: Es gibt zwei Windows Server 2016, die als Terminal Server fungieren. Jetzt ...

SAN, NAS, DAS
Wer kennt sich mit QNAP und CISCO aus ?
gelöst Frage von MachelloSAN, NAS, DAS10 Kommentare

Hallo Zusammen hier im Forum, Ich habe ein QNas 451+ und dieses NAS hat zwei GBit Lan Adapter die ...