V San José probíhá vývojářská konference NVIDIA GTC 2024. CEO společnosti NVIDIA Jensen Huang měl dvouhodinovou keynote, ve které představil celou řadu novinek: NVIDIA Blackwell platform, NVIDIA NIM microservices, NVIDIA Omniverse Cloud APIs, Project GR00T, …
Byly zpracovány a na YouTube zveřejněny videozáznamy jednotlivých přednášek z letošního Installfestu.
Od 21. do 23. března proběhnou Arduino Days 2024. Sledovat bude možné oficiální streamy. Zúčastnit se lze i lokálních akcí. V Česku jsou aktuálně registrovány dvě: v Praze na Matfyzu a v Poličce v městské knihovně.
Letošní ročník konference LinuxDays se uskuteční o víkendu 12. a 13. října, opět se potkáme v pražských Dejvicích na FIT ČVUT. Také během letošního ročníku nás budou čekat desítky přednášek, workshopy, stánky a spousta doprovodného programu. Aktuální dění můžete sledovat na Twitteru, Facebooku nebo na Mastodonu, přidat se můžete také do telegramové diskusní skupiny.
Byla vydána nová major verze 2.0.0 a krátce na to opravné verze 2.0.1 open source online editoru Etherpad (Wikipedie) umožňujícího společné úpravy v reálném čase.
Matematický software GNU Octave byl vydán ve verzi 9.1.0. Podrobnosti v poznámkách k vydání. Nově je preferovaný grafický backend Qt a preferovaná verze Qt 6. V tomto vydání byly přepracovány funkce pro převod čísel z desítkové soustavy. Jako obvykle jsou zahrnuta také výkonnostní vylepšení a zlepšení kompatibility s Matlabem.
Společnost PINE64 stojící za telefony PinePhone nebo notebooky Pinebook publikovala na svém blogu březnový souhrn novinek. Vypíchnout lze, že pracují na virtuálním asistentu PineVox a zatím bezejmenných sluchátkách na lícní kosti (bone conduction).
Hyprland, kompozitor pro Wayland zaměřený na dláždění okny a zároveň grafické efekty, je již dva roky starý. Při té příležitosti byla vydána verze 0.37.0 (a záhy opravná 0.37.1 řešící chybu ve vykreslování oken). Nově závisí na knihovně hyprcursor, která poskytuje škálovatelné kurzory myši.
Geolokační služba Mozilla Location Service, kterou používá množství svobodného softwaru (často přes Geoclue), letos skončí. Data budou dostupná pouze do 10. dubna 2024, API klíče třetích stran budou odstraněny 12. června. Příčinou je údajné porušení patentů firmy Skyhook v roce 2019, následná dohoda omezila rozvoj MLS.
sys.argv[1];Tedy vypise svuj prvni parametr. Jakym zpusobem musim skript upravit, aby fungoval obemi temito moznostmi:
$ ./skript test test $ echo test | ./skript test
Řešení dotazu:
sys.stdin
.
Příklad, mějme soubor pokus.py:
#!/bin/env python import sys nejakadatazestdin = sys.stdin.readlines() print nejakadatazestdina pro otestovaní:
echo pokus.py | ./pokus.py
for line in sys.stdin: dělej něco...což by ze znalosti, že souborový objekt odpovídající stdin je sys.stdin, mělo jít odvodit...
#!/bin/bash while [ 1 ]; do echo "Tik" sleep 1 doneNyni chci napsat skript test.py takovy, aby to fungovalo takto:
$ ./test.sh | ./test.py Tik Tik Tik Tik ^Ccoz s tim vasim resenim nefunguje.
while True: print sys.stdin.readline()(funkcia readline ale na konci reťazca necháva znak \n)
Skript funguje, ale data visí v bufferu a jelikož jich nepřišlo takové množství, aby se buffer vyprázdnil, tak si myslíš, že to nešlape. Nažeň tam víc dat a uvidíš, že to jde. Nejlépe by jsi udělal kdyby jsi přesně popsal co potřebuješ, aby se případně dalo nadhodit vhodnější řešení.
$ sudo tcpdump -A -s 1400 'dst port 80' -i wlan0 | grep GETMi vypisuje jednotlive GET pozadavky, ktere chodi pres wlan0. Co radek, to pozadavek. Pozavek se do konzole vypise vzdy ihned pote co dorazi na wlan0 interface. Ja potrebuji pouze python script, ktery ty retezce (GET pozadavky) bude dostavat na stdin a ihned je vypisovat (pak skript samozrejme upravim, aby i neco s tema retezcema delal). Tzn, chci dosahnout toho, aby prikazy
$ sudo tcpdump -A -s 1400 'dst port 80' -i wlan0 | grep GETi
$ sudo tcpdump -A -s 1400 'dst port 80' -i wlan0 | grep GET | ./skript.pymely stejny vystup.
Šlo mi spíš o nějaké reálné nasazení, možná by Ti totiž místo tcpdump
vyhovoval více přímo modul do Pythonu Pcapy (je součástí Lennyho, třeba bude přímo i v Tvé distibuci).
import sys while True: print sys.stdin.readline().strip()musí
tcpdump -ldělat totéž co
tcpdump -l | ./test.pyTentokrát i ověřeno.
for line in sys.stdin: ...
, což mělo být nejčitější a nejpythonovější řešení. Konstrukce sice používá lazy evaluation, jenže souborové objekty kvůli efektivitě provádějí jakěsi vnitřní bufferování, takže člověk ty řádky stejně nedostane po jednom. Nezjistil jsem, jak/zda se dá vypnout.
sudo tcpdump -l -A -s 1400 'dst port 80' -i eth0 | grep --line-buffered GET | ./skript.pyDulezity je parametr -l u tcpdumpu a --line-buffered u grepu. Dekuji vsem za pomoc.
Tiskni Sdílej: