abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
dnes 07:00 | Zajímavý software

Twister OS je uživatelsky přívětivá linuxová distribuce pro Raspberry Pi 4 vycházející z Raspberry Pi OS (původně Raspbian). Na první pohled zaujme snadným přepínáním mezi tématy Twister OS, Raspbian X, Raspbian X Nighthawk, iRaspbian, iRaspbian Dark, Raspbian 95 nebo Raspbian XP pomocí aplikace ThemeTwister nebo nastavováním Raspberry Pi pomocí aplikací Commander Pi a PiKISS. Představení Twister OS na YouTube.

Ladislav Hagara | Komentářů: 0
včera 17:00 | Zajímavý článek

Asociace pokročilých výpočetních systémů USENIX publikovala na svém YouTube kanálu videozáznamy online přednášek ze svých posledních konferencí. Doporučit lze například videozáznamy z USENIX Security '20 (29th USENIX Security Symposium) nebo videozáznamy z WOOT '20 (14th USENIX Workshop on Offensive Technologies). Ocenění nejlepší článek (Best Paper) na WOOT '20 získal článek BLESA: Spoofing Attacks against Reconnections in Bluetooth Low Energy.

Ladislav Hagara | Komentářů: 0
19.9. 15:55 | Bezpečnostní upozornění

Samba, svobodná implementace síťového protokolu SMB/CIFS, byla vydána ve verzích 4.12.7, 4.11.13 a 4.10.18. Řešena je bezpečnostní chyba CVE-2020-1472 v protokolu Netlogon (Zerologon). Microsoft ji ve svých produktech opravil 11. srpna. Jedná se o chybu s CVSS 9.8. Neautentizovaný útočník se může stát správcem domény.

Ladislav Hagara | Komentářů: 2
18.9. 16:22 | Nová verze

Byla vydána eRouška 2.0 pro Android a iOS. Nově využívá systém oznámení o možném kontaktu vyvinutý společnostmi Google a Apple. Zdrojové kódy eRoušky jsou k dispozici na GitHubu (Android, iOS).

Ladislav Hagara | Komentářů: 54
18.9. 15:33 | Humor

Máte na klávesnici málo kláves? Pomoci vám může 433% Keyboard [reddit, Wayback Machine].

Ladislav Hagara | Komentářů: 18
18.9. 13:33 | Komunita

Otevřená certifikační autorita Let’s Encrypt (Wikipedie) včera na svém blogu oznámila vydání 6 svých nových certifikátů: 1 kořenový, 4 mezilehlé a 1 křížově podepsaný. Kořenový certifikát ISRG Root X2 a mezilehlé E1 a E2 jsou již ECDSA místo RSA. Certifikační autorita Let’s Encrypt byla představena v listopadu 2014. První certifikát vydala přesně před pěti lety, v září 2015. Dnes jich denně vydává milion a půl.

Ladislav Hagara | Komentářů: 0
17.9. 23:11 | Komunita

Mozilla Corporation na svém blogu informuje, že ukončila služby Firefox Send a Firefox Notes. Mozilla Foundation na druhé straně představila rozšíření RegretsReporter. Jedná se o rozšíření pro Firefox a Chrome umožňující Mozillu informovat o doporučených videích na YouTube, jejíchž zhlédnutí uživatel lituje.

Ladislav Hagara | Komentářů: 35
17.9. 15:44 | Zajímavý článek

Společnost Nethemba informuje o již opravené kritické zranitelnosti v aplikaci Moje eZdravie na Slovensku. Kdokoli si mohl stáhnout informace o všech osobách testovaných na COVID-19 (jméno, příjmení, rodné číslo, telefonní číslo, místo pobytu, datum a výsledek odběru).

Ladislav Hagara | Komentářů: 43
17.9. 13:55 | Zajímavý software

GitHub CLI dospěl do verze 1.0.0. GitHub CLI umožňuje pracovat s GitHubem z příkazové řádky (gh issue list; gh pr status; gh release create; gh repo view; …).

Ladislav Hagara | Komentářů: 3
17.9. 09:00 | Nová verze

LabPlot (Wikipedie) je svobodná multiplatformní KDE aplikace pro interaktivní vytváření grafů a analýzu vědeckých dat. Téměř po roce vývoje byla vydána nová verze 2.8.

Ladislav Hagara | Komentářů: 1
Používáte aplikaci eRouška?
 (16%)
 (4%)
 (2%)
 (12%)
 (52%)
 (8%)
 (7%)
Celkem 358 hlasů
 Komentářů: 35, poslední včera 21:50
Rozcestník

Dotaz: regularni vyraz v awk

21.5.2005 00:46 Roland | skóre: 3
regularni vyraz v awk
Přečteno: 343×
Dobry den, nejak si nevim rady s regularnim vyrazem v awk. Z vypisu ls -Rl potrebuji zjistit ktery radek zacina znakem [ nebo . a podle toho se zachovat

ls -Rl `$pwd` | grep -v ^celkem | grep [^*] | awk '{if (($1 == "[^[]") || ($1 == "[^\.]") {print $1} else {print $9}}'

za rady dekuji

Odpovědi

21.5.2005 08:06 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: regularni vyraz v awk
To je zase nějaká domácí úloha na reimplementaci findu v awk? Pokud ne, použij find.

Jinak, kde začít...

Co to je proboha `$pwd` a proč tam je? Nemá to být $PWD, když tedy už vůbec ls potřebuje argument?

grep ... | grep ... | awk má v soutěži o nejzbytečnější grep slušnou naději na umístění na čelní posici.

grep -v ^celkem funguje leda s českým locale, jinak tam lze slovo celkem stěží očekávat.

[^*] se expanduje na co? Na seznam jednopísmenných souborů v adresáři, které se nejmenují *. Jinými slovy nepředvídatelně.

awk. Přečti si Getting started with awk v manuálu. Chceš totiž ve skutečnosti

/[^[]/ { ... }

neboli

PATTERN { ACTION }

takhle se awk běžně používá.

A Expressions. Operátor == je totiž porovnání řetězců, kdybys už chtěl matchovat regulární výrazy, tak se matchují operátorem ~.
21.5.2005 12:16 Roland | skóre: 3
Rozbalit Rozbalit vše Re: regularni vyraz v awk
"Jedna se o silenou soutez na CVUT FEL jmenem: Napis si svuj FIND aneb semestralni uloha z X36UNX..."

1. grep ^celkem, no muzu tam dat total nebo vzit v potaz x-dalsich mutaci unixu a linuxu - me staci kdyz to predvedu na jednom stroji, stejne je to nesmysl takto psat find...
2. [^*] odstrani prazdne radky
3. takze to bude vypadat nejak takto? awk '{if (($1 == "/[^[]/") || ($1 == "/[^\.]/") {print $1} else {print $9}}'
4. na Solarisu mi fungovalo awk '{if ($1 == "[^/*]"){print $9} if ($1 == "[^/]") {print $1}}'

jde mi jen o to rozlisit z vystupu ls -RL jestli se jedna o "cestu" nebo adresar a soubor
21.5.2005 12:16 Michal Kubeček
Rozbalit Rozbalit vše Re: regularni vyraz v awk
To je zase nějaká domácí úloha na reimplementaci findu v awk?

Řekl bych, že pořád ta samá… Nejlepší stejně asi bude z toho shellového skriptu spustit awk a z něj nenápadně zavolat find… :-)

Zajímalo by mne jen, zda cena takto naprogramovaného find (strávený čas krát nějaká rozumná hodinová sazba) přesáhne cenu, za kterou se prodávají RHEL, SLES nebo Solaris… :-)

21.5.2005 12:39 Roland | skóre: 3
Rozbalit Rozbalit vše Re: regularni vyraz v awk
Jsem rad ze vas tu alespon pobavim :)

Ale opravdu nevite jak na ten regularni vyraz? Potrebuji, aby se na vsechny radky co zacinaji '.' nejak zereagovalo...
21.5.2005 12:54 Michal Kubeček
Rozbalit Rozbalit vše Re: regularni vyraz v awk
Už jsem vám napsal několikrát, že metodu parsování výstupu 'ls -lR' považuji za naprosto nevhodnou a že daleko vhodnější by bylo řešit to rekurzivním procházením adresářového stromu. Ale komu není rady, tomu není pomoci…

Ale jinak v tom nevidím problém:

ls -lR | awk '/^\./ { print "hele, tečka!"; }'

21.5.2005 13:16 Roland | skóre: 3
Rozbalit Rozbalit vše Re: regularni vyraz v awk
Dekuji!
Asi jsem vase vyzvy ve zmeti zprav prehledl, zkusim si o rekurzivnim procházeni adresaroveho stromu neco vyhledat. Kdybyste mel nejaky zajimavy link, byl bych za nej rad...
21.5.2005 13:57 Michal Kubeček
Rozbalit Rozbalit vše Re: regularni vyraz v awk
Na to není potřeba nic hledat, lehký nástřel:

function recurse
{
  for f in *; do
    # tady s tím souborem něco udělám
    if [ -d "$f" ]; then
      cd "$f"
      recurse
      cd ..
    fi
  done
}

Samozřejmě to bude chtít trochu doladit (prázdné adresáře, skryté soubory, zacyklené linky, …).

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267   www.czech-server.cz
© 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.