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

Wort aus Datei herausfiltern von Zeichen x bis y

Frage Entwicklung Batch & Shell

Mitglied: poopie

poopie (Level 1) - Jetzt verbinden

10.05.2009, aktualisiert 23:25 Uhr, 4511 Aufrufe, 9 Kommentare

Hallo,
ich würde gerne ein Wort aus einer Textdatei herausfiltern und als Variable weiter benutzen.
Die datei enthälter unter anderen folgendes
<option selected="selected">MEIN TEXT</option>
Und MEIN TEXT würde ich gerne weiterbenutzen.

Meine Frage ist ob das machbar ist und wenn ja, wie?

Vielen Dank für's lesen. und evtl. antworten
Mitglied: MKzero
11.05.2009 um 10:01 Uhr
Mhh.. mit nem batch? Glaube ich eher nicht...
Bitte warten ..
Mitglied: poopie
11.05.2009 um 10:28 Uhr
Wenn es mit Batch nicht geht, würde ich mich auch mit Perl zufrieden stellen lassen.
Das heißt dann wohl das hier kann zugemacht werden und ich schreib den Beitrag nochmal im Perl Bereich.
Bitte warten ..
Mitglied: miniversum
11.05.2009 um 13:38 Uhr
Klar geht das mit Batch:
01.
FOR /F "tokens=2 delims=<>" %%i in ('findstr /B /R "<option selected="selected">" "C:\Datei.txt"') do set "text=%%i" 
02.
echo %text%
Bitte warten ..
Mitglied: poopie
15.05.2009 um 12:55 Uhr
Also ich hab das nun getested und muss leider sagen das es nicht funktioniert.
So wird leider kein Text ausgegeben.
Bitte warten ..
Mitglied: miniversum
15.05.2009 um 16:25 Uhr
Ich habs grade bei mri ausprobiert udn hier funktioniert es
Ich habe allerdings eine datei genommen die nur diese eine zeile enthällt.
Du kannst es ja schrittweise mal direkt in der cmd testen.
Findet er die richtige Zeile wenn du das eingibst:
findstr /B /R "<option selected="selected">" "C:\Datei.txt"
Was kommt dort als Ergebnis raus?
Den Dateinamen und Pfad musst du natürlich anpassen.
Bitte warten ..
Mitglied: 78632
15.05.2009 um 17:25 Uhr
Versuch's mal so:

01.
@echo off  
02.
FOR /F "tokens=3 delims=>=<" %%i in ('findstr /B /R "<option selected="selected">" "C:\Datei.txt"') do set "text=%%i"  
03.
pause
Bitte warten ..
Mitglied: Biber
15.05.2009 um 18:09 Uhr
Moin miniversum und blablanick (willkommen im Forum),

quält Euch doch nicht rum mit sinnlosem Rumgerate.

Solange nicht bekannt ist, wie die zu lesende Datei aussieht geht Dein Ansatz, blablanick, beispielsweise in diesem Fall in die Grütze:
01.
 
02.
<html> 
03.
<head><!-- PageID 3 - published by RedDot 7.5 - 7.5.1.31 - 22877 --> 
04.
<title> 
05.
....
... und miniversums Findstr fasst ins Leere, wenn die HTML/XML-Datei keine CRLFs enthält oder der gesuchte Tag nicht als eigene Zeile separiert ist.

Lasst doch den Thread-Copy&Paster noch 2 oder 3 Doppelpostings mehr machen, vielleicht kommt er ja mal von allein auf den Bolzen, ein paar Infos mehr zu geben.
Oder gar einen aussagefähigen Ausschnitt der Quelldatei.

BTW ungeklärte Fragen des IT-Alltags:
WTHF kann denn der Grund sein, weshalb ich außerhalb einer Applikation, die mit Tags umgehen kann wissen wollen mag, welche Option "selected" ist????
Wer außer der Appz, die das geschrieben hat und auch sicherlich lesen kann will das denn wozu auslesen??

Es geht mich ja nix an, was da zusammengeschrotet werden soll, aber kaufen würde ich es eher nicht.

Grüße
Biber
Bitte warten ..
Mitglied: 78632
15.05.2009 um 19:02 Uhr
Zitat von Biber:

Solange nicht bekannt ist, wie die zu lesende Datei aussieht geht
Dein Ansatz, blablanick, beispielsweise in diesem Fall in die
Grütze:

Ach was, ich bin da flexibel.

01.
@echo off  
02.
For /F "tokens=5 delims=>=< " %%i in ('findstr /R "<option selected="selected">" "C:\Datei.txt"') do set "text=%%i" 
03.
 
04.
echo %text% 
05.
pause
Wenn "MEIN TEXT" dann tatsächlich aus 2 Worten bestehen sollte, nimmt man halt
01.
 for /F "tokens=5,6 delims=>=< " %%i in ('findstr /R "<option selected="selected">" "C:\Datei.txt"') do set "text=%%i %%j"
Aus der Fragestellung
Und MEIN TEXT würde ich gerne weiterbenutzen.
und dem zuvor für findstr verwendete Parameter /B geht doch imo einwandfrei hervor, was der Fragesteller möchte, also lässt sich die Frage erst einmal zutreffend beantworten.

:-P
Bitte warten ..
Mitglied: bastla
19.05.2009 um 00:37 Uhr
@78632
... und dem zuvor für findstr verwendete Parameter /B geht doch imo einwandfrei hervor, was der Fragesteller möchte
Wenn der Fragesteller "findstr /B" verwendet hätte ...
Ev noch etwas flexibler (wenn auch nur mehr mit Batch-"Hülle"), aber immer noch von der (noch fehlenden) Beschreibung des Inhaltes von "MEIN TEXT" (Stichwort "Sonderzeichen") abhängig:
01.
@echo off & setlocal 
02.
set "Datei=D:\Die Datei.xml" 
03.
set Suche="<option selected=""selected"">(.+)</option>" 
04.
 
05.
set G=%temp%\GetValue.vbs 
06.
>%G%  echo T=CreateObject("Scripting.FileSystemObject").OpenTextFile("%Datei%").ReadAll 
07.
>>%G% echo Set rE=New RegExp:rE.Global=True:rE.IgnoreCase=True:rE.Pattern=%Suche% 
08.
>>%G% echo For Each M In rE.Execute(T):WScript.Echo M.SubMatches(0):Next 
09.
 
10.
for /f "delims=" %%i in ('cscript //nologo %G%') do call :ProcessValue "%%i" 
11.
goto :eof 
12.
 
13.
:ProcessValue 
14.
echo Gefunden: %1 
15.
goto :eof
Grüße
bastla
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst Teile eines Dateinamens ändern mit Batch Datei (4)

Frage von fffffuuuuuuuhhhh zum Thema Batch & Shell ...

Batch & Shell
gelöst In einer Matroska-Datei eine Audio-Spur suchen (4)

Frage von Spider.Mann zum Thema Batch & Shell ...

Windows 10
Komulatives Update in WIM Datei einbinden (3)

Frage von kingsepp zum Thema Windows 10 ...

Neue Wissensbeiträge
Sicherheits-Tools

Sicherheitstest von Passwörtern für ganze DB-Tabellen

(1)

Tipp von gdconsult zum Thema Sicherheits-Tools ...

Peripheriegeräte

Was beachten bei der Wahl einer USV Anlage im Serverschrank

(9)

Tipp von zetboxit zum Thema Peripheriegeräte ...

Windows 10

Das Windows 10 Creators Update ist auf dem Weg

(6)

Anleitung von BassFishFox zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Exchange Server
Exchange 2016 Standard Server 2012 R2 Hetzner Mail (36)

Frage von Datsspeed zum Thema Exchange Server ...

Batch & Shell
gelöst ZIP-Archive nach Dateien durchsuchen und Pfade ausgeben (33)

Frage von evinben zum Thema Batch & Shell ...

Verschlüsselung & Zertifikate
Mit Veracrypt eine zweite interne (non-system) Festplatte verschlüsseln (10)

Frage von Bernulf zum Thema Verschlüsselung & Zertifikate ...

C und C++
Methode multiple return values (8)

Frage von mayho33 zum Thema C und C ...