Regularni vyrazy
Michal Weinfurtner
weinfurt na securities.cz
Čtvrtek Říjen 21 11:29:36 CEST 1999
Panove, panove
Zda se, ze tato debata se pomalu stava soubojem programovacich jazyku mezi sebou a
jednoduchych TEXTOVYCH filtru .
Jaksi sjme zapomeli na chudaka zacatecnika ktery se mozna dale trapi s grepem nebo se uci
Python a rika si " ta linux conference ja na h...". Pak nam to take mozna oznami, az se ten
Python nauci a bude z toho dalsi zbytecna mela.
Nechme uz toho.
Vy kdo mate radi Python si piste v Pythonu petiradkove "programy" ( to plati i pro Perl a
ostatni ) a my co jsme konzervativni a pouzivame starych Unixovych nastroju, pouzivejme je i
nadale. To ovsem neznamena ze bychom meli Python nebo Perl zavrhnout. Naucme se i je, budeme
potom schopni vystridat i ty administratory, kteri zacinali hned od sloziteho a k jednoduchemu
se uz potom nedostali.
Rada zacatecnikum , naucte se neprve pouzivat zakladnich prikazu Unixu, vcetne awk, sed a
regularnich vyrazu a potom se vrhnete na nektery ze zminenych programovacich jazyku. No a
potom si napisete, co bude treba. Jednoduchou formatovaci ulohu na prikazove redce a slozitou
analyzu textu treba v Pythonu.
A je to.
Zdravim
Michal
P.S. Jeste zaverem na vysvetlenou :
Prosim neporovnavejme co je lepsi, zda programovat v Pythonu, Perlu nebo awk. Nikam to nevede.
Kazdy soudny clovek prece uzna ze filtr nemuze pri nejlepri vuli nahradit programovaci jazyk.
O tom co je vetsi standard to take neni.
( Jedovata poznamka - co je pro Unix vetsim standardem z programovacich jazyku nez C ?? ) .
Ja jsem mel na mysli situaci kdy si pisu nejake drobne udrzbove scripty, ktere chci pouzivat
na jakekoli platforme a jakekoli konfiguraci Unixu , nezvisle na tom co je nainstalovano za
programovaci jazyky !!! A k tomu byl awk apolu se sed,cut,tr,sort atd.. napsan !
Radovan Garabik wrote:
> Dovolim si odpovedat na dva prispevky v jednom...
>
> matus.uhlar na in.nextra.sk wrote:
> : Radovan Garabik <garabik na atlas02.dnp.fmph.uniba.sk> wrote:
> : -> Michal Weinfurtner <weinfurt na securities.cz> wrote:
> : -> : Proc to delat jednoduse kdyz to de slozite. Taky by to slo v cecku a urcite i v
> : -> : basicu na ATARI.
>
> : -> pretoze:
> : -> 1) mne sa python paci :-)
>
> : ale ja sa ho kvoli tomuto ucit nebudem. a nie som jediny.
>
> ja napriklad nepoznam awk (okrem zakladov) a kvoli tomuto sa ho ucit
> nebudem a nie som jediny :-)
>
> : -> 2) nemyslim si ze v tom pythone to bolo zlozite
>
> : ale v awku by to bolo jednoduchsie...
>
> rozhodne menej prehladne, a neviem ci az natolko jednoduchsie
>
> : -> 3) predpokladam ze nie je samoucelne tie cisla zistit, ale ze s nimi
> : -> bude treba nieco robit - napr ich nasobit, delit, scitavat, formatovat
> : -> vystup apod.
>
> : to zvladne awk tiez...
>
> ale to uz je trocha mimo jeho posobnost...
> cislo treba zobrat, z ineho suboru nacitat uzivatela a koeficient pri jeho
> mene, vynasobit cislo koeficientom a sadzbou za telefonny hovor podla casu
> kedy sa hovor odohral a vysledok poslat mailom (vymysleny priklad - ale asi
> tak to aj nejako je)
> pre python je to trivialne, uz vidim ako by si debugoval script v awku, ak
> by nezbehol na prvy pokus
>
> : moja skusenost je zase ta ze co robia ludia radi perlom obas zvladne aj awk,
> : obcas aj sed/cut a vobec, vela unixakov nepozna skripty zalozene na
> : programoch
>
> : cut, head, tail, tr, uniq, grep, join, comm, awk a dalsich...
>
> suhlasim, ja ich pouzivam tiez, ale ako som uz povedal, kriticka hranica po
> dosiahnuti ktorej sa program stane neudrzovatelnym je pre sh/sed/awk
> nizsia ako pre perl a ta je zase nizsia ako pre python
>
> Michal Weinfurtner <weinfurt na securities.cz> wrote:
> : "Heerrrgot sakra chlapii "
>
> : Neni na Unixu nic jednoduzsiho nez zpracovat text pomoci zakladnich prikazu ( programu )
>
> : dostupnych na vsech platformach.
> : Jak by jste chteli zajistit to aby takhle jednoduchej skript fungoval na Unixu AT&T,
> : Digital Unix, AIX atd. ... , kdyby jste ho napsali v Pythonu ??!!
>
> tak ze ho spustim :-)
> vsade na tieto platformy python existuje a je dostupny
> nie je to az taky standard ako perl, ale ani bash nie je
> (priklad: studentsky server na susednej skole - bash nema, python ano (pre
> informaciu je to FreeBSD))
>
> : Ja mam spoustu jednoduchejch scriptu na zalohy dat, na ruzne formatovani textu a
> : filtrovani pro tisk. Mam tyhle scripty uz peknou radku let, prosel jsem s nimi nekolik
> : firem a nekolik platforem Unixu. Nikdy jsem nemel problem. Kdybych to napsal v Pythonu,
> : Perlu , nebo nejakem jinem jazyce, nejspise bych pri zmene platformy musel i prepisovat
> : skripty. A co spravce, kterej prijde po Vas ? Musi se kvuli tomu ucit novy jazyk ? Nebo
> : je snad Python uz takovej standard, ze se dodava se vsemi Unixy a kazdy spravce Unixu by
> : ho mel ovladat stejne jako shell awk a vi editor ?? !
>
> rozhodne nie, v tomto suhlasim
> ale sme v cz.comp.linux
> pre linux je to standard (viacmenej... komentare nemusite pisat.. situaciu
> poznam)
>
> : Ja si myslim ze kdo chce spravovat Unix ( jaky koli) mel by se naucit zaklady , tedy vi
> : editor, awk, sed, shell a pouzivani pipe.
>
> ano, ale otazka nebola o spravovani linuxu. otazka bola o nejakom rozdeleni slov,
> pricom z otazky bolo zrejme ze:
> dany clovek ma s grepom problemy
> awk a perl dobre neovlada (nie je sam :-))
> potrebuje s tymi cislami este nieco robit
>
> tak preco by som mu neporadil aj navod ako to urobit v pythone?
> nech si vyberie z odpovedi, ktora mu viacej vyhovuje
>
> : A pak teprve Python
>
> suhlasim
>
> Na zaver: ak budete chciet odpovedat na tento prispevok, najprv sa zamyslite
> ci je to nieco konstruktivne. Ak to bude nieco v style "ja python nemam rad
> a preto je toto blbost a v awku je to najlepsie" tak to za konstruktivne
> nepovazujem :-)
> Ja som tiez dlhsiu dobu python obchadzal s tym ze naco este nejaky dalsi
> jazyk... az som sa raz (viacmenej nahodou) trocha blizsie nan pozrel
> a odvtedy ho neobchadzam...
> python vyzera tak ako mal vyzerat perl, keby bol napisany poriadne
> (syntax...)
>
> (davam na seba azbestovu vestu)
>
--
Michal Weinfurtner
Systems Administrator
Internet Securities, Prague
A Euromoney Institutional Investor Company
Vinohradska 37 , 120 00 Praha 2, Czech republic
Voice: (+420 2) 22 25 43 45; Fax: (+420 2) 22 25 43 44
http://www.securities.cz
Další informace o konferenci Linux