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

gelöst bestimmten Text per Batch aus txt auslesen

Mitglied: jochgeier

jochgeier (Level 1) - Jetzt verbinden

13.06.2006, aktualisiert 09.08.2006, 17243 Aufrufe, 4 Kommentare

Hallo zusammen,

ich werkle nun schon seit geraumer Zeit an folgendem Problem:
Ich habe hier ein Programm (Mobile Master), welches SMS von einer externen Firma (mit Fehlermeldungen als Inhalt) am PC empfängt.
Das Programm gibt mir die SMS als Text-Datei mit einer einzigen Zeile aus:


+49123456789 13.06.2006, 17:11:14 Hier steht der Text der SMS 040D91945122611298F900006060317111418004D4F29C0E


Diese leite ich per Email weiter. Soweit sogut.
Nun ist bei dem Programm ein kleines Kommandozeilen-Tool dabei, mit dem man einfache SMS mit folgendem Aufruf verschicken kann.


sms.exe +49123456789 hier kommt der Text hin der verschickt werden soll


Das Problem ist nun, dass die Komplette Verarbeitung in einer Batch-Datei steht und ich nun die eine Zeile aus der vom Mobile Master generierten Textdatei irgendwie in eine Variable bekommen muss.
Da ich mich mit Batch-Programmierung nicht so gut auskenne, bin ich mit etwas rumbasteln zu einer doch recht unschönen Lösung gekommen:


rem Einlesen der smsrec.txt bis maximal 27 Wörter
for /f "tokens=1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27" %%a in
(smsrec.txt) do set sms-text=%%a %%b %%c %%d %%e %%f %%g %%h %%i %%j %%k %%l %%m %%n %%o %%p %%q %%r %%s %%t %%u %%v %%w %%x %%y %%z
call "c:\programme\mobile master\sms.exe" +491753621319 %sms-text%


Es funktioniert zwar einwandfrei (bis auf Umlaute), allerdings weiss ich nicht, ob es
1. nicht irgendwie einfacher geht
und ob es
2. möglich ist, die letzte lange Zahlenfolge der SMS/Textdatei irgendwie rauszuwerfen


Vielleicht kann mir einer weiterhelfen ?

Grüße,
Jochgeier
Mitglied: Biber
03.08.2006 um 20:55 Uhr
Moin Jochgeier,

sorry, hab Deinen Beitrag heute erst gefunden. Peinlich.

Also, ein bisschen einfacher geht es schon...erstens formal:
01.
rem Einlesen der smsrec.txt bis maximal 27 Wörter 
02.
for /f "tokens=1-27" %%a in (smsrec.txt) do set sms-text=%%a %%b %%c %%d %%e %%f %%g %%h %%i %%j %%k %%l %%m %%n %%o %%p %%q %%r %%s %%t %%u %%v %%w %%x %%y %%z 
03.
call "c:\programme\mobile master\sms.exe" +491753621319 %sms-text%
..noch simpler ist es, wenn Du einfach die ganze Zeile as is nimmst, also behauptest, es gibt gar keine Trennzeichen. Die Klausel dazu ist "Delims="

01.
rem Einlesen der smsrec.txt as is 
02.
for /f "delims=" %%a in (smsrec.txt) do set "sms-text=%%a" 
03.
call "c:\programme\mobile master\sms.exe" +491753621319 %sms-text%
-oder etwas kürzer-
01.
rem Einlesen der smsrec.txt as is 
02.
for /f "delims=" %%a in (smsrec.txt) do call "c:\programme\mobile master\sms.exe" +491753621319 %%a
-oder alternativ-
01.
rem Einlesen der smsrec.txt as is 
02.
Set /P sms-text=<smsrec.txt 
03.
call "c:\programme\mobile master\sms.exe" +491753621319 %sms-text%
Hoffe, Du hast keinen so schlechten Eindruck wegen der langen Wartezeit - oft geht es schneller. Sorry.

Biber,
schuldbewusster Mod in diesem Bereich
Bitte warten ..
Mitglied: jochgeier
04.08.2006 um 10:02 Uhr
Hallo Biber,

ich hätte zwar nicht gedacht, dass mir noch einer antwortet, aber trotzdem vielen Dank!
Durch einige widrige Umstände im Betrieb lag das Projekt eh etwas auf Eis, ist also nicht so tragisch.
Ich werde deine Vorschläge aber bei der nächsten Gelegenheit ausprobieren, da das ja doch etwas schöner aussieht und wahrscheinlich auch besser funktioniert.

Nochmals vielen Dank, und mach Dir keinen Kopf wegen der langen Wartezeit.
Lieber spät als nie

Grüße,
Jochgeier
Bitte warten ..
Mitglied: jochgeier
09.08.2006 um 10:13 Uhr
So, hab es gerade mal geschafft, es auszuprobieren und es funktioniert. Zwar mag er immer noch keine Umlaute, aber das ist nicht tragisch, denn ich vermute, die SMSen die wir bekommen werden (hab ja bis heute leider noch keine von der Firma bekommen), sind wahrscheinlich sowieso auf englisch.
Aber es sieht auf jeden Fall schon mal hübscher aus und ist nicht auf eine bestimmte Anzahl Wörter beschränkt!
Danke nochmals.

Viele Grüße,
Jochgeier
Bitte warten ..
Mitglied: Biber
09.08.2006 um 10:44 Uhr
Danke für die Rückmeldung, Jochgeier,

ich setze den Thread auf "Gelöst" und "Geschlossen".

Schönen Tag noch
Biber
P.S. Falls irgendwann einmal doch Umlaute konnen sollten und "falsch" übersetzt werden:
Das liegt dann daran, das Windows defaultmäßig die Codepage 1252 benutzt und die CMD.exe die Codepage 850. Weil...M$...*seufz*.
Du kannst dazu am Anfang des Bätches den Befehl "CHCP 1252" abfeuern..dann sollte auch das gehen. Findest aber auch Beispiele dazu über die Forumssuche.

P.P.S. Das Füllwort "Call" oben in den beiden Beispiele ist überflüssig (bei einem *.exe-Aufruf), stört aber auch nicht weiter.
Bitte warten ..
Ähnliche Inhalte
Batch & Shell

Per Batch ab einer bestimmten Stelle in einer .txt auslesen

Frage von PeterPannBatch & Shell1 Kommentar

Hallo! Folgendes Problem: Ich habe ein anmelde und abmelde Skript die wie folgt aussehen: die logdatei die daraus resultiert ...

Batch & Shell

Batch mit for txt auslesen?

gelöst Frage von Mohji32Batch & Shell4 Kommentare

Hallo, ich habe mir den "Grundkurs" zu for schleifen im Board angeschaut aber leider nicht das hin bekommen was ...

Batch & Shell

Mit Batch .txt auslesen und benutzen

gelöst Frage von GhostJumperHDBatch & Shell8 Kommentare

Ich habe folgendes Problem Ich möchte das W-Lan überlasten und möchte danach die .bat zur .exe umwandeln. Ich möchte ...

Batch & Shell

Batch sucht bestimmten "text" in einer .txt datei und soll dann die Zeile anzeigen

gelöst Frage von MedicalAdBatch & Shell6 Kommentare

Hallo Leute, wie mann vielleicht schon aus dem Titel heraus finden kann, brauche ich eine Batch Datei die eine ...

Neue Wissensbeiträge
Sonstige Systeme
Es war einmal ein BeOS - Wer erinnert sich noch?
Information von BassFishFox vor 9 StundenSonstige Systeme4 Kommentare

Hallo, Bin gerade ueber Haiku gestolpert, von dessen Existenz als "Nachfolger des BeOS" ich wusste nur mich nie wirklich ...

Datenschutz

Microsoft und DSGVO - ob das wohl jemals klappt (Probleme beim Datenabfluss für Office Pro Plus)?

Tipp von VGem-e vor 12 StundenDatenschutz3 Kommentare

Servus Kollegen, siehe Aber wer setzt schon MS Office Pro Plus ein? Wie dann der Stand beim "normalen" MS ...

Windows 10

Macht Windows 10.1809 Probleme mit gemappten Netzlaufwerken (betrifft wohl insbes. AMD-Hardware und Trend Micro AV-Produkte)?

Tipp von VGem-e vor 16 StundenWindows 103 Kommentare

Moin Kollegen, grad dazu gefunden und Hatten wir dies nicht bei früheren W10-Upgrades ebenfalls? Da bleibt nur, das Upgrade ...

Humor (lol)

Das neue Miniatur Wunderland OFFICIAL VIDEO - worlds largest model railway - railroad

Information von StefanKittel vor 1 TagHumor (lol)2 Kommentare

Hallo, wer noch nie im Miniatur Wunderland war, sollte es dringend mal nachholen. Es gibt eine neues Video. Viele ...

Heiß diskutierte Inhalte
Viren und Trojaner
Office365 Trojaner Analyse
Frage von ZeppelinViren und Trojaner14 Kommentare

Liebe Community, ich wende mich an euch, um mehr über den Office365 Trojaner zu erfahren, welcher grade seine Runden ...

Netzwerkgrundlagen
Werksreset HP 1920S-24G
gelöst Frage von HenereNetzwerkgrundlagen14 Kommentare

Servus zusammen, ich habe mir 2 neue Switche zugelegt, doch ich komme damit nicht ganz klar. Waren Vorführgeräte zum ...

DSL, VDSL
DSL Monitoring Tool - Quick and dirty?
Frage von george44DSL, VDSL13 Kommentare

Liebe Gemeinde, ich suche ein einfaches und vor allem schnell zu installierendes Monitoring-Tool zur kontinuierlichen Dokumentation (nur) der Internetanbindung. ...

Firewall
Sophos UTM 9.5 Firewall Log-File durchsuchen
gelöst Frage von Leo-leFirewall12 Kommentare

Hallo zusammen, weiß jemand von Euch, ob man bei der Sophos die Firewall logs noch etwas besser filtern kann? ...