Wer den Dateiprompt ls in Farbe haben will, kann mal exa ausprobieren.
Einfach installieren mit sudo apt install exa und dann, sieht ein exa -la schon viel besser aus:
Vorher war es so: „ls aber in Farbe mit exa“ weiterlesen
Wenzlaff.de – Rund um die Programmierung
mit Java, Raspberry Pi, SDR, Linux, Arduino, Sicherheit, Blender, KI, Statistik, Krypto und Blockchain
Wer den Dateiprompt ls in Farbe haben will, kann mal exa ausprobieren.
Einfach installieren mit sudo apt install exa und dann, sieht ein exa -la schon viel besser aus:
Vorher war es so: „ls aber in Farbe mit exa“ weiterlesen
Picocli: Eine leistungsstarke Bibliothek für die Erstellung von Befehlszeilenanwendungen. Hier habe ich schon oft davon berichtet. Da es im Juni die Version 4.7.4 gab, mal hier ein Beispiel dazu.
Die Entwicklung von Software, sei es in Form von Anwendungen oder Tools, erfordert oft die Integration von Befehlszeilenfunktionalität, um Benutzern eine effiziente Interaktion mit der Software zu ermöglichen. Eine der bemerkenswertesten Bibliotheken, die diese Aufgabe erleichtert, ist „Picocli„. Picocli ist eine Java-basierte Open-Source-Bibliothek, die Entwicklern dabei hilft, robuste und benutzerfreundliche Befehlszeilenanwendungen zu erstellen.
Was ist Picocli? „Every main method deserves picocli!“ weiterlesen
exa ersetzt den default Dateilister ls auf dem Raspberr pi in Farbe und mit Git Support und Tree anzeige. So sieht z.B. ein Verzeichnis aus, mit Git Spalte:
Es ist schnell installiert mit „exa der moderne Ersatz für ls auf dem Pi und Linux Systeme“ weiterlesen
Manchmal möchte man mal schnell eine Mindmap ohne großen Aufwand erzeugen. Wenn so was reicht …
kann die Mindmap leicht aus diesen Markdown Code erzeugt werden:
1 2 3 4 5 6 7 8 9 10 |
# A Mind Map ... - <http://www.wenzlaff.info/> ## draw processes of the brain in action ## cuts through jargon and artifice ## goes to the heart of a Matter ## is an open-minded thinking tool ## doesn't rely on deduction or reduction ## you can understand and explain your topic to a newbie more easily ## can help you overcome the curse of Knowledge |
Auf dem Raspberry Pi muss npm installiert sein, dann einmalig die markmap-cli installieren mit: „Markdown to Mindmap mit markmap-cli auf Raspberry Pi“ weiterlesen
Das Twitter Intelligence Tool (TWINT) mit Web-Scraping-Technologie kann auch auf einem Raspberry Pi installiert werden.
Mit dem Web Scraper für Twitter, mit dem man Tweets von Usern des Kurznachrichtendienstes einholen kann, ohne dabei vom Twitter API eingeschränkt zu werden läuft unter der MIT-Lizenz (Anleitung Twitter-Intelligence-Tool.pdf). TWINT wurde in Python geschrieben, ist am April 2020 in Version 2.1.20 erschienen. Alle Funktionen gehen aber nicht mehr, weil sich die Twitter API geändert hat. Z.b. wirft ein twint -u programmierung –following diesen Fehler:
CRITICAL:root:twint.feed:Follow:IndexError
Aber einiges geht doch noch. Also mal installieren mit:
pip3 install twint
wenn dann nicht alles geht, hat bei mir geholfen:
1 2 |
sudo apt-get install libatlas-base-dev pip3 install --upgrade -e git+https://github.com/twintproject/twint.git@origin/master#egg=twint |
So ein erster Test, alle Befehle ausgeben mit twint -h …: „Twitter Intelligence Tool (TWINT) mit Web-Scraping-Technologie auf dem Raspberry Pi Zero nicht Pi Zero 2 W mit ARM-SoC Broadcom BCM2837 vier ARM Cortex-A53 und 64-Bit-taugliche ARMv8-Kerne“ weiterlesen
Wie kann die Performance einer React App. ermittelt werden? Dazu gibt es das „React Developer Tools“ von React. Wenn das im Browser installiert ist:
Es gib dann zwei neue Tabs am Ende: Components „React Developer Profiler im Firefox Browser für Performance Messungen“ weiterlesen
„Black Box Test“ mit Wapiti. Es prüft Webseiten und Web-Applikationen auf Schwachstellen, indem es die Seitenstruktur ermittelt und daraufhin versucht, Daten und Payloads an Skripte und Formulare zu übergeben. Cool, dann mal den eigenen Server überprüfen. Hier schon mal der Ergebnis-Report vorweg:
Installieren mit: „„Black Box Test“ mit Wapiti“ weiterlesen
Die auf dem Rechner installierten SSH-Keys können mit diesem Befehl gelistet werden:
1 |
for keyfile in ~/.ssh/id_*; do ssh-keygen -l -f "${keyfile}"; done | uniq |
Dabei ist der Algorithmus wichtig, der angezeigt wird. … „Upgrade deine SSH Keys auf: ed25519“ weiterlesen
Wer mal eben in ein paar Sekunden einen QR-Code von der Kommandozeile erzeugen will, braucht nur diese URL mit curl aufrufen:
curl http://qrenco.de/[HIER DER TEXT FÜR DEN QR-CODE INHALT]
Z.B.: curl http://qrenco.de/kleinhirn.eu
Ein PDF in Java ist mit iText 7 in ein paar Minuten gemacht.
Wir können z.B. ein String Liste mit nur 3 Zeilen Code mit dem Times Roman Font auf DIN A4 ausgeben:… „PDF Erzeugung mit iText 7 oder in 3 Zeilen Java zum PDF“ weiterlesen
Ein eigenes Maven-Plugin zu erstellen ist nicht schwer und ist schnell gemacht. Wir wollen ein Plugin welches einen Verzeichnis Inhalt mit ls -la in das Log schreibt erstellen. Es können aber auch andere Linux Befehle übergeben werden. Hier nun die 6 Schritte mit den Vorlagen die mind. nötig sind.
1. Wir legen in Eclipse ein neue Maven Projekt mit Java 1.8 an. mit Artifact Id und Group Id de.wenzlaff.command.maven.plugin
2. In der pom.xml fügen wir die folgenden Abhängikeiten hinzu: „Ein eigenes Maven-Plugin in 15 Minuten inklusive Dokumentation erstellen“ weiterlesen
Um httpie auf dem Raspberry Pi zu installieren, ist nur ein
1 |
sudo apt-get install httpie |
nötig. Und schon hat man einen curl Ersatz mit intuitiver UI, JSON support, Syntax Hervorhebung und mehr.
Quicktest, abfragen einer Domain, mit http get www.kleinhirn.eu „httpie ist auch auf dem Raspberry Pi in 5 Minuten installiert, es muss ja nicht immer curl sein“ weiterlesen
Beim Raspberry Pi und anderen Rechnern reicht ein:
1 |
curl wttr.in |
von der Kommandozeile oder im Browser:
Auch für den Raspberry Pi gibt es ein Systemtool nmon analog zu top.
Es ist schnell installiert mit
1 |
sudo apt-get install nmon |
oder wie weiter unten beschrieben in aktuellster Version selbst compiliert.
Das starten des Kommandozeilen Tools geht dann mit Aufruf von nmon:
„nmon 16g für CPU, Speicher, Netzwerk, Disk, Top … es muss ja nicht immer top (htop) sein“ weiterlesen
Manchmal hat man auf dem Raspberry Pi XML Dokumente die man ansehen will, die aber nicht schön formatiert sind.
Z.B. dieses XML Dokument hat alles in einer Zeile, und ist das Ergebnis einer Haltestellenabfrage in Hannover über diese API:
1 |
<?xml version="1.0" encoding="utf-8"?><Trias version="1.0" xmlns="trias" xmlns:siri="http://www.siri.org.uk/siri" xmlns:mw="http://services.mentzdv.de/2010/07/middleware"><ServiceDelivery><siri:ResponseTimestamp>2018-01-26T16:39:07</siri:ResponseTimestamp><siri:ProducerRef>HannIT</siri:ProducerRef><siri:ResponseMessageIdentifier>16-39-04-229</siri:ResponseMessageIdentifier><DeliveryPayload><!--Version: 10.0.46.2 build 04.08.2017 23:35:59 - Data Build: 2018-01-26T02:58:08 - Data Format: EFA10_00_08--><TripResponse><ErrorMessage><Code>-2</Code><Text><Text>Der Inhalt des Elements 'LocationRef' in Namespace 'trias' ist unvollständig. Erwartet wurde die Liste der möglichen Elemente: 'LocationName' in Namespace 'trias'.</Text><Language>de</Language></Text></ErrorMessage><ErrorMessage><Code>-2</Code><Text><Text>Der Inhalt des Elements 'LocationRef' in Namespace 'trias' ist unvollständig. Erwartet wurde die Liste der möglichen Elemente: 'LocationName' in Namespace 'trias'.</Text><Language>de</Language></Text></ErrorMessage><TripResult><ResultId>ID1925019635546312568133148169218912592159</ResultId><Trip><TripId>ID79254160591872422507315819789461666810137</TripId><Duration>PT1H2M</Duration><StartTime>2018-01-25T18:55:00</StartTime><EndTime>2018-01-25T19:57:00</EndTime><Interchanges>1</Interchanges><TripLeg><LegId>ID1913421648141272672174552254815522713559</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:2921</StopPointRef><StopPointName><Text>Langenhagen Zentrum</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T18:55:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T19:17:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:03470:645</JourneyRef><LineRef>de:gvh:03470</LineRef><DirectionRef>outward</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>470</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004380</DestinationStopPointRef><DestinationText><Text>Hannover Stöcken</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID139231716200782176135165271411684811793</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T19:42:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4892</StopPointRef><StopPointName><Text>Osterwald OE Asselweg</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T19:57:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:04490:121</JourneyRef><LineRef>de:gvh:04490</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>490</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004882</DestinationStopPointRef><DestinationText><Text>Osterwald UE Großer Weg</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg></Trip></TripResult><TripResult><ResultId>ID105164111781947352671401882331617935139115</ResultId><Trip><TripId>ID159169223155511751349321724680145161110</TripId><Duration>PT1H1M</Duration><StartTime>2018-01-25T18:56:00</StartTime><EndTime>2018-01-25T19:57:00</EndTime><Interchanges>2</Interchanges><TripLeg><LegId>ID10815957164483877314721718154162215165197</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:2921</StopPointRef><StopPointName><Text>Langenhagen/Zentrum</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T18:56:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:2551</StopPointRef><StopPointName><Text>Hannover Wiesenau</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T19:01:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:02001:183</JourneyRef><LineRef>de:gvh:02001</LineRef><DirectionRef>outward</DirectionRef><Mode><PtMode>urbanRail</PtMode><Name><Text>Stadtbahn</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>1</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25001611</DestinationStopPointRef><DestinationText><Text>Laatzen, Laatzen</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID2061855721862517977133148250126255684919</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:2551</StopPointRef><StopPointName><Text>Hannover Wiesenau</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T19:07:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T19:29:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:03135:878</JourneyRef><LineRef>de:gvh:03135</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>135</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004380</DestinationStopPointRef><DestinationText><Text>Hannover Stöcken</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID9995222128125187707315220323680631562182</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T19:42:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4892</StopPointRef><StopPointName><Text>Osterwald OE Asselweg</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T19:57:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:04490:121</JourneyRef><LineRef>de:gvh:04490</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>490</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004882</DestinationStopPointRef><DestinationText><Text>Osterwald UE Großer Weg</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg></Trip></TripResult><TripResult><ResultId>ID161981841731302019878174130109162453113116</ResultId><Trip><TripId>ID3918616412419135149781371953388149171121194</TripId><Duration>PT1H0M</Duration><StartTime>2018-01-25T18:57:00</StartTime><EndTime>2018-01-25T19:57:00</EndTime><Interchanges>3</Interchanges><TripLeg><LegId>ID19424210018018023612771405119231108213121</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:2921</StopPointRef><StopPointName><Text>Langenhagen Zentrum</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T18:57:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:6631</StopPointRef><StopPointName><Text>Langenhagen/Bahnhof Mitte</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T19:01:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:03253:452</JourneyRef><LineRef>de:gvh:03253</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>253</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25002921</DestinationStopPointRef><DestinationText><Text>Langenhagen Zentrum</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID23323118724021416427781792089816576113151182</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:6631</StopPointRef><StopPointName><Text>Langenhagen/Bahnhof Mitte</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T19:06:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4411</StopPointRef><StopPointName><Text>Hannover Bahnhof Ledeburg</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T19:10:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:ddb:92H04:34459</JourneyRef><LineRef>de:ddb:92H04</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>rail</PtMode><Name><Text>S-Bahn</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>S4</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25709922</DestinationStopPointRef><DestinationText><Text>Hildesheim Hauptbahnhof (DB)</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID4920542874223994771381012721722024388225</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:4411</StopPointRef><StopPointName><Text>Hannover Bahnhof Ledeburg</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T19:14:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T19:19:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:03136:855</JourneyRef><LineRef>de:gvh:03136</LineRef><DirectionRef>outward</DirectionRef><Mode><PtMode>bus</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>136</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004380</DestinationStopPointRef><DestinationText><Text>Hannover Stöcken</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID652261514012618017670175133982138136218197</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T19:42:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4892</StopPointRef><StopPointName><Text>Osterwald OE Asselweg</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T19:57:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:04490:121</JourneyRef><LineRef>de:gvh:04490</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>490</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004882</DestinationStopPointRef><DestinationText><Text>Osterwald UE Großer Weg</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg></Trip></TripResult><TripResult><ResultId>ID11514022929162233141661592261847712923322380</ResultId><Trip><TripId>ID1652211681371157925069184721752532381851970</TripId><Duration>PT47M</Duration><StartTime>2018-01-25T19:40:00</StartTime><EndTime>2018-01-25T20:27:00</EndTime><Interchanges>1</Interchanges><TripLeg><LegId>ID312311722214831647716912518895244264960</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:2921</StopPointRef><StopPointName><Text>Langenhagen Zentrum</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T19:40:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4940</StopPointRef><StopPointName><Text>Berenbostel Friedhof</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T20:08:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:03480:644</JourneyRef><LineRef>de:gvh:03480</LineRef><DirectionRef>outward</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>480</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004779</DestinationStopPointRef><DestinationText><Text>Garbsen</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID3329442610613616813613286151252103191195</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:4940</StopPointRef><StopPointName><Text>Berenbostel Friedhof</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T20:20:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4892</StopPointRef><StopPointName><Text>Osterwald OE Asselweg</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T20:27:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:04491:56</JourneyRef><LineRef>de:gvh:04491</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>491</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004882</DestinationStopPointRef><DestinationText><Text>Osterwald UE Großer Weg</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg></Trip></TripResult><TripResult><ResultId>ID118139611755178916415022410698139126144107</ResultId><Trip><TripId>ID131187901371121036771547612819354244136173</TripId><Duration>PT1H4M</Duration><StartTime>2018-01-25T19:53:00</StartTime><EndTime>2018-01-25T20:57:00</EndTime><Interchanges>1</Interchanges><TripLeg><LegId>ID577166230254887651681252071162029217446</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:2921</StopPointRef><StopPointName><Text>Langenhagen Zentrum</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T19:53:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T20:15:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:03470:647</JourneyRef><LineRef>de:gvh:03470</LineRef><DirectionRef>outward</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>470</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004380</DestinationStopPointRef><DestinationText><Text>Hannover Stöcken</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID130102331026661101731901681619196131246223</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T20:42:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4892</StopPointRef><StopPointName><Text>Osterwald OE Asselweg</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T20:57:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:04490:165</JourneyRef><LineRef>de:gvh:04490</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>490</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25008000</DestinationStopPointRef><DestinationText><Text>Neustadt Bahnhof (ZOB)</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg></Trip></TripResult><TripResult><ResultId>ID2422521721919511024079149568022252143133</ResultId><Trip><TripId>ID561512171131471642397317415022223117617924343</TripId><Duration>PT1H1M</Duration><StartTime>2018-01-25T19:56:00</StartTime><EndTime>2018-01-25T20:57:00</EndTime><Interchanges>2</Interchanges><TripLeg><LegId>ID115101125110189114787816281225159180157222243</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:2921</StopPointRef><StopPointName><Text>Langenhagen/Zentrum</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T19:56:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:2551</StopPointRef><StopPointName><Text>Hannover Wiesenau</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T20:01:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:02001:93</JourneyRef><LineRef>de:gvh:02001</LineRef><DirectionRef>outward</DirectionRef><Mode><PtMode>urbanRail</PtMode><Name><Text>Stadtbahn</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>1</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25001731</DestinationStopPointRef><DestinationText><Text>Sarstedt</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID4220210417623222571144145131167301226160</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:2551</StopPointRef><StopPointName><Text>Hannover Wiesenau</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T20:04:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T20:25:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:03135:880</JourneyRef><LineRef>de:gvh:03135</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>135</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004380</DestinationStopPointRef><DestinationText><Text>Hannover Stöcken</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID23313114750179181537614420825018112515976198</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T20:42:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4892</StopPointRef><StopPointName><Text>Osterwald OE Asselweg</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T20:57:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:04490:165</JourneyRef><LineRef>de:gvh:04490</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>490</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25008000</DestinationStopPointRef><DestinationText><Text>Neustadt Bahnhof (ZOB)</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg></Trip></TripResult><TripResult><ResultId>ID62710347231212777916720530102103236129125</ResultId><Trip><TripId>ID192142087958171817614911715312214495626</TripId><Duration>PT55M</Duration><StartTime>2018-01-25T20:02:00</StartTime><EndTime>2018-01-25T20:57:00</EndTime><Interchanges>3</Interchanges><TripLeg><LegId>ID021221622813524314867154108373622179153211</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:2921</StopPointRef><StopPointName><Text>Langenhagen Zentrum</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T20:02:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:6631</StopPointRef><StopPointName><Text>Langenhagen/Bahnhof Mitte</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T20:06:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:03253:454</JourneyRef><LineRef>de:gvh:03253</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>253</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25002921</DestinationStopPointRef><DestinationText><Text>Langenhagen Zentrum</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID2103126170139236204721912618558203440220</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:6631</StopPointRef><StopPointName><Text>Langenhagen/Bahnhof Mitte</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T20:12:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4411</StopPointRef><StopPointName><Text>Hannover Bahnhof Ledeburg</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T20:16:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:ddb:92H05:34581</JourneyRef><LineRef>de:ddb:92H05</LineRef><DirectionRef>outward</DirectionRef><Mode><PtMode>rail</PtMode><Name><Text>S-Bahn</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>S5</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25108000</DestinationStopPointRef><DestinationText><Text>Hameln Bahnhof</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID2102025022290209126701891871688972155206251</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:4411</StopPointRef><StopPointName><Text>Hannover Bahnhof Ledeburg</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T20:20:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T20:25:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:03135:880</JourneyRef><LineRef>de:gvh:03135</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>135</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004380</DestinationStopPointRef><DestinationText><Text>Hannover Stöcken</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID223511961452379142751651781292641397912</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T20:42:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4892</StopPointRef><StopPointName><Text>Osterwald OE Asselweg</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T20:57:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:04490:165</JourneyRef><LineRef>de:gvh:04490</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>490</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25008000</DestinationStopPointRef><DestinationText><Text>Neustadt Bahnhof (ZOB)</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg></Trip></TripResult><TripResult><ResultId>ID40298810861371865128253164221761717693</ResultId><Trip><TripId>ID33161119322081084465142150261461872496174</TripId><Duration>PT1H4M</Duration><StartTime>2018-01-25T20:53:00</StartTime><EndTime>2018-01-25T21:57:00</EndTime><Interchanges>1</Interchanges><TripLeg><LegId>ID598210623213128767019019138228121928482</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:2921</StopPointRef><StopPointName><Text>Langenhagen Zentrum</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T20:53:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T21:15:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:03470:649</JourneyRef><LineRef>de:gvh:03470</LineRef><DirectionRef>outward</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>470</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004380</DestinationStopPointRef><DestinationText><Text>Hannover Stöcken</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID72215115525443670148818720539241229233</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T21:42:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4892</StopPointRef><StopPointName><Text>Osterwald OE Asselweg</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T21:57:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:04490:124</JourneyRef><LineRef>de:gvh:04490</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>490</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004882</DestinationStopPointRef><DestinationText><Text>Osterwald UE Großer Weg</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg></Trip></TripResult><TripResult><ResultId>ID221241100164208190132681292215018612118117135</ResultId><Trip><TripId>ID178441123217718823065128741712514116725118</TripId><Duration>PT1H1M</Duration><StartTime>2018-01-25T20:56:00</StartTime><EndTime>2018-01-25T21:57:00</EndTime><Interchanges>2</Interchanges><TripLeg><LegId>ID721151667710012011365187961882178724220760</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:2921</StopPointRef><StopPointName><Text>Langenhagen/Zentrum</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T20:56:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:2551</StopPointRef><StopPointName><Text>Hannover Wiesenau</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T21:01:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:02001:97</JourneyRef><LineRef>de:gvh:02001</LineRef><DirectionRef>outward</DirectionRef><Mode><PtMode>urbanRail</PtMode><Name><Text>Stadtbahn</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>1</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25001731</DestinationStopPointRef><DestinationText><Text>Sarstedt</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID24361371510774138671721997766213161108</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:2551</StopPointRef><StopPointName><Text>Hannover Wiesenau</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T21:04:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T21:25:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:03135:882</JourneyRef><LineRef>de:gvh:03135</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>135</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004380</DestinationStopPointRef><DestinationText><Text>Hannover Stöcken</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID112196223552103917218414817624023119128197</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T21:42:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4892</StopPointRef><StopPointName><Text>Osterwald OE Asselweg</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T21:57:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:04490:124</JourneyRef><LineRef>de:gvh:04490</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>490</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004882</DestinationStopPointRef><DestinationText><Text>Osterwald UE Großer Weg</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg></Trip></TripResult><TripResult><ResultId>ID116155168213245145287216534195106108248127104</ResultId><Trip><TripId>ID74250138237497825275173189149253169411675</TripId><Duration>PT51M</Duration><StartTime>2018-01-25T21:06:00</StartTime><EndTime>2018-01-25T21:57:00</EndTime><Interchanges>3</Interchanges><TripLeg><LegId>ID46572610722824922765191103242111218710047</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:2921</StopPointRef><StopPointName><Text>Langenhagen Zentrum</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T21:06:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:6631</StopPointRef><StopPointName><Text>Langenhagen/Bahnhof Mitte</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T21:10:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:03480:613</JourneyRef><LineRef>de:gvh:03480</LineRef><DirectionRef>outward</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>480</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004948</DestinationStopPointRef><DestinationText><Text>Engelbostel Kirchstraße</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID2298515723823375966916321165239254168237179</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:6631</StopPointRef><StopPointName><Text>Langenhagen/Bahnhof Mitte</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T21:12:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4411</StopPointRef><StopPointName><Text>Hannover Bahnhof Ledeburg</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T21:16:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:ddb:92H05:34585</JourneyRef><LineRef>de:ddb:92H05</LineRef><DirectionRef>outward</DirectionRef><Mode><PtMode>rail</PtMode><Name><Text>S-Bahn</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>S5</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25108000</DestinationStopPointRef><DestinationText><Text>Hameln Bahnhof</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID22591552723199181671901766491225577125</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:4411</StopPointRef><StopPointName><Text>Hannover Bahnhof Ledeburg</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T21:20:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T21:25:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:03135:882</JourneyRef><LineRef>de:gvh:03135</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>135</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004380</DestinationStopPointRef><DestinationText><Text>Hannover Stöcken</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID11757226130228246184641495024211715624657175</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T21:42:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4892</StopPointRef><StopPointName><Text>Osterwald OE Asselweg</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T21:57:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:04490:124</JourneyRef><LineRef>de:gvh:04490</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>490</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004882</DestinationStopPointRef><DestinationText><Text>Osterwald UE Großer Weg</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg></Trip></TripResult></TripResponse></DeliveryPayload></ServiceDelivery></Trias> |
Wie können wir das nun schön formatieren? Dazu gibt es das Kommandozeilen-Tool xmllint. Damit kann eine XML Datei leicht formatiert werden. Dazu das xmllint installieren mit
1 |
sudo apt-get install libxml2-utils |
Dann ein Aufruf von „Raspberry Pi: XML formatieren mit xmllint unter Linux“ weiterlesen
Mit den Worten von Wikipedia, Metasploit ist ein „freies Open-Source-Projekt zur Computersicherheit, das Informationen über Sicherheitslücken bietet und bei Penetrationstests sowie der Entwicklung von IDS-Signaturen eingesetzt werden kann.“ Es ist in der Programmiersprache Ruby implementiert, ja es gibt auch eine JavaGui. Dazu später mehr.
Wie wird das nun aber auf einen Raspberry P Zero W installiert?
Ein Github Account und ein aktuelles Debian ist Vorraussetzung. „Wie kann Metasploit an Neujahr auf dem Raspberry Pi Zero W mit Ruby in 3 Stunden installiert werden?“ weiterlesen
Wer die rrdtools aus dem Debian Repo. installiert erhält die Version 1.4.7. Wer eine neuere haben will kann sie wie folgt compilieren:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
sudo apt-get update sudo apt-get upgrade # in .profile diese beiden Variablen eintragen BUILD_DIR=/tmp/rrdbuild INSTALL_DIR=/opt/rrdtool-1.7.0 mkdir -p $BUILD_DIR cd $BUILD_DIR sudo apt-get install libpango1.0-dev libxml2-dev wget http://oss.oetiker.ch/rrdtool/pub/rrdtool-1.7.0.tar.gz gunzip -c rrdtool-1.7.0.tar.gz | tar xf - cd rrdtool-1.7.0 ./configure --prefix=$INSTALL_DIR && make && make install |
Manchmal will man sehen, was alles so in einer compilierten Java Datei steckt. Nicht immer hat man den Quelltext. Auch für die Fehlersuche ist ein Disassembler mal ganz gut.
In jedem JDK ist auch ein Disassembler javap dabei. Denn wollen wir nun einmal auf eine unbekannte Java Class Datei loslassen, um zu sehen, was es so zu sehen gibt.
Zuerst loggen wir uns auf die Kommandozeile eines Raspberry Pi ein, auf dem ein Java JDK installiert ist. Ob Java installiert ist kann mit
1 |
java -version |
getestet werden. Wenn dort eine Versionsangabe geliefert wird, ist alles ok.
Dann legen wir erst mal ein Testverzeichnis an und wechsel in das Verzeichnis:
1 2 |
mkdir java-test cd java-test |
Dann holen wir uns in das Verzeichnis eine unbekannte Flugzeug.class Datei (der Quellcode ist hier zu finden):
1 |
wget http://blog.wenzlaff.de/wp-content/uploads/2017/01/Flugzeug.class |
Diese Datei wollen wir nun disassemblieren, mit
1 |
javap Flugzeug.class |
Schon bekommen wir alle gewünschten Informationen:
Nun schauen wir uns mal alle Möglichkeiten an: „Mit dem Raspberry Pi den Java Class File Disassembler (javap) aufrufen“ weiterlesen