Portál AbcLinuxu, 2. května 2025 05:42
tail -n 1 /proc/net/wireless | awk '{print "SNR " $3 ", Signal " $4 }'
a v tom perlu by to taky nevypadalo nak moc hur ...
Pokud bych byl troll, tak bych napsal, [napsáno]Pouze jsem konstatoval, co bych napsal, pokud bych byl troll.
(Odin je troll.) implikuje (Odin napsal [nějaké kecy].)
Pravda.
#!/bin/bash while :; do awk ' # BEGIN { snr=0.0; signal=0.0;} (FNR==3) { snr = $2; signal = $4;} END {printf("SNR=%6.1f, signal=%6.1f\n", snr, sig);} ' /proc/net/wireless sleep 8 done
while sleep ... do ... done
#!/bin/bash while sleep 0.08; do awk ' # BEGIN { snr=0.0; signal=0.0;} (FNR==3) { snr = $3; signal = $4;} END {printf("SNR=%6.1f, signal=%6.1f\n", snr, signal);} ' /proc/net/wireless done
watch --interval=0.08 cat /proc/net/wireless
Akorát v téhle podobě to není ani na blog. A ty globální proměnné v tom C kódu... :-/
import time while True: with open("/proc/net/wireless") as f: lines = f.read().split("\n") tokens = lines[2].split() print("SNR=%6.1f, signal=%6.1f" %(float(tokens[2]), float(tokens[3]))) time.sleep(80e-3)
from __future__ import print_function import time while True: with open("/proc/net/wireless") as stream: next(stream); next(stream) print("SNR={:6.1f}, signal={:6.1f}".format(*[float(n) for n in next(stream).split()[2:4]])) time.sleep(.08)
Traceback (most recent call last): File "wlan.py", line 9, in <module> print("SNR=%6.1f, signal=%6.1f" %(float(tokens[2]), float(tokens[3]))) IndexError: list index out of range
aby to bylo čitelné, neasi (proti perlu a awk)A já myslel, že člověka, který potkává DNA sekvence, nemůže nějaký Perl rozhodit
watch -n 1 cat /proc/wireless
/proc/net/wireless
by mohl být použit maximálně jako příklad. Ale určitě se najde mnoho lepších příkladů, kde se parsuje víceřádková tabulka. A jestli to správně chápu, tak by na tohle měl fungovat netlink a ten je socketový, takže nevyžaduje cyklus s usleep a zbytečné periodické probouzení.
Nechápu, co s tím článkem máte za problém. Pro mě, jako začátečníka to je fajn čtení. Dozvím se, kde v systému je info o wifi a taky vidím ukázku Céčka, což se mi hodí, protože v něm nepíšu. To všechno za minutu čtení. A to se, alespoň mně, vyplatí ;) Nejde o to, že to jde napsat líp... Je to jen demonstrační příklad.Mně osobně se třeba nelíbí, že ten demonstrativní příklad je prakticky jediný obsah článku. To je snad dostatečný důvod hodnotit článek podle demnostrativního příkladu, když není podle čeho jiného hodnotit.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.