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

Per Batch einen Wert aus einer Textdatei in eine Variable schreiben

Frage Entwicklung Batch & Shell

Mitglied: choffmann

choffmann (Level 1) - Jetzt verbinden

25.07.2007, aktualisiert 02.08.2007, 6055 Aufrufe, 9 Kommentare

Textverarbeitung mit Batchbefehlen

Hallo Experten.

Folgende Textdatei habe ich:
Textdatei Anfang---
InfoKey: Creator
InfoValue: FreePDF XP 3.07 - http://shbox.de
InfoKey: Title
InfoValue: Flumec_001
InfoKey: Author
InfoValue: chrhof
InfoKey: Producer
InfoValue: AFPL Ghostscript 8.54
InfoKey: ModDate
InfoValue: D:20070725143759
InfoKey: CreationDate
InfoValue: D:20070725143759
NumberOfPages: 2
Textdatei Ende---

Ich würde gerne den Wert "2" von NumberOfPages in eine Variable schreiben. Hat jemand eine Idee wie das gehen könnte.

Mit freundlichen Grüßen
Christian
Mitglied: Dani
25.07.2007 um 18:40 Uhr
Hi Christian,
probier's mal so:
01.
@echo off & setlocal 
02.
 
03.
for /f "tokens=2 delims= " %%a in ('type %1 ^| findstr /i "NumberOfPages"') do set NumberOfPages=%%a 
04.
 
05.
pause
Die Variable heißt "NumberOfPages" und gilt nur im aktuellen Fenster.


Grüße
Dani
Bitte warten ..
Mitglied: bastla
25.07.2007 um 18:44 Uhr
Hallo choffmann!

Bevor ich die Suchfunktion bemühe, Versuchen wir es gleich einmal so:
01.
for /f "tokens=2" %%i in ('findstr /c:"NumberOfPages" Textdatei') do set Seiten=%%i
Grüße
bastla

[Edit] @Dani: Gerne nach Dir ... [/Edit]
[Edit2] Die Suchfunktion bringt viel mehr, wenn dann wieder Code angezeigt wird. [/Edit]
Bitte warten ..
Mitglied: Biber
25.07.2007 um 19:36 Uhr
Moin choffmann,

Fussnote:
Damit nicht ein trailing blank die weitere Auswertung stört, würde ich den Wert der Variablen wahlweise setzen mit
  • ....set "NoPages=%%~i" .........oder
  • ....set /a "NoPages=%%i" .

Ansonsten eine der Lösungen oben.

Gruß
Biber
Bitte warten ..
Mitglied: Dani
25.07.2007 um 19:46 Uhr
Hi bastla,
ich musste einfach die Chance nutzen.... *gg* Aber meistens sind meine Lösungen nicht so perfekt durchdacht, wie bei dir / euch (@Biber). Also keine Angst, mach dir keine Konkurenz. ^^


Grüße
Dani
Bitte warten ..
Mitglied: Biber
25.07.2007 um 19:57 Uhr
@Dani
"...nicht so perfekt durchdacht wie bei dir / euch.."

Da muss ich Dich enttäuschen...
Bei uns Amateur-Skriptern ist es- um mal einen Kalauer zu wagen - nicht so sehr "durchdacht" als vielmehr "überdacht".
Überdacht trifft es besser - weil wir im Praxistext mit unseren Schnipseln dauernd im Regen stehen.
Wie Du an unseren vielen "[Edit]"s und nachtröpfelnden Verfeinerungen sehen kannst.

@bastla
Gehe in diesem Fall davon aus auch für Dich sprechen/schreiben zu dürfen...

Grüße
Biber
Bitte warten ..
Mitglied: Dani
25.07.2007 um 20:16 Uhr
@Biber
Bei uns Amateur-Skriptern ...
Wenn du dich als Amateur ansiehtst, was bin dann ich?? Du bzw. ihr schreibt uns hier Scripte, wo es mir (vllt. geht es anderen auch so) schwindelig wird! Also nicht so viel Bescheidenheit bitte. *gg*

Wie Du an unseren vielen "[Edit]"s und nachtröpfelnden Verfeinerungen sehen kannst.
Das mag sein, aber das liegt meinstes an den Anforderungen der Fragesteller. Den die rrücken die restlichen Feature erst nach eurem funktionierendem Script raus!


Grüße
Dani
Bitte warten ..
Mitglied: bastla
25.07.2007 um 20:23 Uhr
@Biber & Dani

Wichtig ist ja nur, dass das Nachtröpfeln endet, bevor die Lösung ganz "durchweicht" (oder der Fragesteller entfleucht) ist ...

Andererseits ist es (derzeit) ohnehin ratsam, die Lösung scheibchenweise zu präsentieren (zumindest wenn sie unvorsichtiger Weise zwischen Code-Tags steht) ...

Grüße
bastla
Bitte warten ..
Mitglied: Biber
26.07.2007 um 19:05 Uhr
Moin choffmann,

wir wollten Dich aus unserer Plauderei nicht ausschließen ... You are welcome!

Hat denn einer der Lösungsansätze oben bei Dir gepasst?
Ist Deine Frage beantwortet?

Grüße
Biber
Bitte warten ..
Mitglied: choffmann
02.08.2007 um 14:04 Uhr
Hi alle zusammen.
Ich wahr in den Ferien daher meine späte Antwort.
Da NumberOfPages immer in der letzten Zeile steht *Glück* sieht die Lösung nun so aus:
FOR /F "tokens=1,2,3 delims=: " %%a in (doc_data.txt) do Set Var1=%%a & Set Var2=%%b & Set Var3=%%c

Im letzten Durchgang werden die richtigen Werte in die Variablen geschrieben und ich kann mit Var2 weiterarbeiten.

Danke für eure Hilfe.

Mit freundlichen Grüßen
Christian
Bitte warten ..
Neuester Wissensbeitrag
Ähnliche Inhalte
Batch & Shell
gelöst Selected Gridview Value in Variable schreiben (4)

Frage von reissaus73 zum Thema Batch & Shell ...

Batch & Shell
gelöst Aktueller Besitzer der aktuellen Datei herausfinden und in Variable schreiben (11)

Frage von Peter32 zum Thema Batch & Shell ...

Batch & Shell
gelöst DWORD (Name immer verschieden) eines RegKeys auslesen und in Variable schreiben (2)

Frage von reissaus73 zum Thema Batch & Shell ...

Batch & Shell
gelöst Mehrere Ordnernamen auslesen und in eine Variable schreiben (5)

Frage von schmitho zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Windows Userverwaltung
Ausgeschiedene Mitarbeiter im Unternehmen - was tun mit den AD Konten? (27)

Frage von patz223 zum Thema Windows Userverwaltung ...

Viren und Trojaner
Aufgepasst: Neue Ransomware Goldeneye verbreitet sich rasant (20)

Link von Penny.Cilin zum Thema Viren und Trojaner ...

LAN, WAN, Wireless
FritzBox, zwei Server, verschiedene Netze (20)

Frage von DavidGl zum Thema LAN, WAN, Wireless ...

Windows Netzwerk
Windows 10 RDP geht nicht (18)

Frage von Fiasko zum Thema Windows Netzwerk ...