Na čem aktuálně pracují vývojáři GNOME a KDE Plasma? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE Plasma.
FlappyFavi, hra Flappy Bird v ikoně Favicon. Nefunguje na mobilech.
Byly vyhlášeny výsledky (YouTube) 28. ročníku D.I.C.E. (Design, Innovate, Communicate, Entertain) Awards: Hrou roku 2024 je Astro Bot.
Všem na AbcLinuxu vše nejlepší k Valentýnu aneb Dni lásky ke svobodnému softwaru (I love Free Software Day, Mastodon, 𝕏).
Vývojáři openSUSE Tumbleweed oznámili, že u nových instalací se ve výchozím stavu přechází z AppArmor na SELinux. Uživatelé, kteří chtějí zůstat na AppArmor si mohou AppArmor vybrat v instalátoru.
Hector "marcan" Martin skončil jako vedoucí projektu Asahi Linux aneb Linux na Apple Siliconu. Projekt ale pokračuje dál.
PostgreSQL byl vydán ve verzích 17.3, 16.7, 15.11, 14.16 a 13.19. Řešena je zranitelnost CVE-2025-1094 s CVSS 8.1 a více než 70 chyb.
Dnes je Světový den rádia. Použili jste někdy GNU Radio?
Před 33 lety, ve čtvrtek 13. února 1992, se tehdejší Česká a Slovenská Federativní Republika oficiálně (a slavnostně) připojila k Internetu.
Byla vydána nová verze 9.10 z Debianu vycházející linuxové distribuce DietPi pro (nejenom) jednodeskové počítače. Přehled novinek v poznámkách k vydání.
Ahoj. Zdravím zdejší komunitu. Měl bych někoho z Vás prosbu. Nenašel by se zde někdo tak laskavý a nanapsal mi skript či malý program např. v c, který by plnil následující funkci? Mám *.txt soubory a potřebuju z nich vycucnout vždy určité číselné údaje. Soubory jsou výstupem z iwconfigu a obsahuji položky jako signal level, link quality, tx power apod. Potřebuji z toho pak udělat tabulky v Excelu, takže by bylo dobré, kdyby ten program ty hodnoty nějak rozumně oddělil středníkama a vytvořil se csv soubor, který už Excel umí načíst.. OS mám Ubuntu 9.10. Předem moc děkuji za Váš čas.
Řešení dotazu:
while (true)
do
iwlist wlan0 scan |grep Quality >> vystup.csv
sleep 10
done
A potom importnúť výstup.csv s tým, že oddeľovač je medzera.
Ak chytíš viac ako jednu sieť, tak sa treba pohrať s grep-om:
iwlist wlan0 scan |grep -A 'ESSID:"mojasiet"' |grep Quality
alebo tak nejak.
#! /usr/bin/env python # -*- coding: utf-8 -*- import re import sys # Link Quality=75/100 Signal level=-59 dBm Noise level=-127 dBm # Bit Rate=54 Mb/s Tx-Power=27 dBm PATTERNS = [ re.compile(r"""Link Quality=([0-9]+)/([0-9]+)\s+Signal level=(-[0-9]+) dBm\s+Noise level=(-[0-9]+) dBm"""), re.compile(r"""Bit Rate=([0-9]+) Mb/s\s+Tx-Power=([0-9]+) dBm"""), ] while (True): line = sys.stdin.readline() if (not line): break for pattern in PATTERNS: m = pattern.match(line.strip()) if (not m): continue for group in m.groups(): sys.stdout.write("%s;" % group) sys.stdout.write("\n")
Použití:
$ chmod +x parse.py $ ./parse.py <input.txt 75;100;-59;-127; 54;27; 75;100;-59;-127; 54;27; 75;100;-59;-127;
grep
na nějaký výraz ze zpracovávaných řádků. Proto, že ti pak pro další zpracování vzniknou podčásti s jiným počtem sloupců.
2) Nahradil bych rovnítka mezerou pomocí tr
.
3) Vytáhnul bych relevantní sloupce pomocí awk
.Oddělovač (středník) bych asi nacpal rovnou do příkazu pro awk.
4) Jestli to chceš v jednom souboru, tak si pak výsledky spoj pomocí paste
.
perl -e 'open FH,"155530-pujde-14396.txt"; while(<FH>) {$f.=$_}; while($f=~/=(\S+\s{0,1}\S*)[^=]+=(\S+\s{0,1}\S*)[^=]+=(\S+\s{0,1}\S*)[^=]+=(\S+\s{0,1}\S*)[^=]+=(\S+\s{0,1}\S*)/sg) {print join(";",$1,$2,$3,$4,$5)."\n"}; close FH;' > vystup.csv
54 Mb/s;27 dBm;74/100 ;-60 dBm;-127 dBm 54 Mb/s;27 dBm;75/100 ;-59 dBm;-127 dBm 54 Mb/s;27 dBm;75/100 ;-59 dBm;-127 dBm 54 Mb/s;27 dBm;74/100 ;-59 dBm;-127 dBm 54 Mb/s;27 dBm;75/100 ;-59 dBm;-127 dBm 54 Mb/s;27 dBm;75/100 ;-59 dBm;-127 dBm 54 Mb/s;27 dBm;75/100 ;-59 dBm;-127 dBm 54 Mb/s;27 dBm;75/100 ;-59 dBm;-127 dBm 54 Mb/s;27 dBm;75/100 ;-59 dBm;-127 dBm 54 Mb/s;27 dBm;75/100 ;-59 dBm;-127 dBm 54 Mb/s;27 dBm;75/100 ;-59 dBm;-127 dBm 54 Mb/s;27 dBm;75/100 ;-59 dBm;-127 dBm 54 Mb/s;27 dBm;74/100 ;-60 dBm;-127 dBm 54 Mb/s;27 dBm;74/100 ;-60 dBm;-127 dBm 54 Mb/s;27 dBm;74/100 ;-60 dBm;-127 dBm 54 Mb/s;27 dBm;73/100 ;-60 dBm;-127 dBm 54 Mb/s;27 dBm;73/100 ;-61 dBm;-127 dBm 54 Mb/s;27 dBm;73/100 ;-61 dBm;-127 dBm 54 Mb/s;27 dBm;72/100 ;-62 dBm;-127 dBm 54 Mb/s;27 dBm;73/100 ;-61 dBm;-127 dBm 54 Mb/s;27 dBm;73/100 ;-61 dBm;-127 dBm 54 Mb/s;27 dBm;72/100 ;-61 dBm;-127 dBm 54 Mb/s;27 dBm;72/100 ;-61 dBm;-127 dBm 54 Mb/s;27 dBm;73/100 ;-61 dBm;-127 dBm 54 Mb/s;27 dBm;72/100 ;-61 dBm;-127 dBm 54 Mb/s;27 dBm;73/100 ;-61 dBm;-127 dBm 54 Mb/s;27 dBm;74/100 ;-60 dBm;-127 dBm 54 Mb/s;27 dBm;73/100 ;-61 dBm;-127 dBm 54 Mb/s;27 dBm;74/100 ;-60 dBm;-127 dBm 54 Mb/s;27 dBm;74/100 ;-60 dBm;-127 dBm 54 Mb/s;27 dBm;75/100 ;-59 dBm;-127 dBm 54 Mb/s;27 dBm;75/100 ;-59 dBm;-127 dBm 54 Mb/s;27 dBm;75/100 ;-59 dBm;-127 dBm 54 Mb/s;27 dBm;76/100 ;-58 dBm;-127 dBm 54 Mb/s;27 dBm;76/100 ;-58 dBm;-127 dBm 54 Mb/s;27 dBm;75/100 ;-59 dBm;-127 dBm 54 Mb/s;27 dBm;74/100 ;-59 dBm;-127 dBm 54 Mb/s;27 dBm;75/100 ;-59 dBm;-127 dBm 54 Mb/s;27 dBm;75/100 ;-59 dBm;-127 dBm 54 Mb/s;27 dBm;75/100 ;-59 dBm;-127 dBm 54 Mb/s;27 dBm;75/100 ;-59 dBm;-127 dBm 54 Mb/s;27 dBm;75/100 ;-59 dBm;-127 dBm 54 Mb/s;27 dBm;73/100 ;-60 dBm;-127 dBm 54 Mb/s;27 dBm;72/100 ;-62 dBm;-127 dBm 54 Mb/s;27 dBm;72/100 ;-61 dBm;-127 dBm 54 Mb/s;27 dBm;73/100 ;-61 dBm;-127 dBm 54 Mb/s;27 dBm;74/100 ;-60 dBm;-127 dBm 54 Mb/s;27 dBm;75/100 ;-59 dBm;-127 dBm 54 Mb/s;27 dBm;75/100 ;-59 dBm;-127 dBm 54 Mb/s;27 dBm;75/100 ;-59 dBm;-127 dBm
perl -e 'open F,"155530-pujde-14396.txt"; while(<F>) {$f.=$_}; while($f=~/=(-?\d+)[^=]+=(-?\d+)[^=]+=(-?\d+)[^=]+=(-?\d+)[^=]+=(-?\d+)/sg) {print join(";",$1,$2,$3,$4,$5)."\n"}; close F;' > vystup.csva vystup vyzera:
54;27;74;-60;-127 54;27;75;-59;-127 54;27;75;-59;-127 54;27;74;-59;-127 54;27;75;-59;-127 ...
Tiskni
Sdílej: