Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 6 odgovora
  • 6.183 pregleda

Najnovija ↓

treba mi skripta 01.05.2002. u 20:20 · pre 298 meseci #1
pozdrav,
imam jedan file koji sadrzi jako mnogo teksta. Treba mi skripta koja ce da grep-uje taj file u potrazi za nekom reci (npr 'test') i onda da 10 redova iznad te reci i 10 redova ispod te reci prekopira u jedan poseban file. I tako za svaku pronadjenu rec 'test'. I ako moze da nakon jednog prekopiranog dela ubaci jos par praznih redova ili zvezdica kako bi mogao da raspoznajem delove teksta.

primer:
testsaudhakuwdhkauwhdkauwh
dawdawTESTdhakwhdauwdh
ajwkduahkwudha

*****************************

dhakwudhkauwhdkauwhdkauwd
dkawhdkauhwkduTESTdkauwdhkauwhd
djawhdkauhwkaudhakwudahwkudah

(samo u ovom primeru je prekopiran jedan red pre i posle reci 'TEST' i nisam napisao izgled celog teksta mada nije ni bitno mislim da ste shvatili sta mi treba)

hvala unaperd

Re: treba mi skripta 02.05.2002. u 01:14 · pre 298 meseci #2
$ grep -B 10 -A 10 test velikifile > posebanfile

grep će ubaciti
--
između redova pri ispisu

P.S. Mogao si barem manual da pročitaš pre nego što si se zaleteo da pitaš. Ovako sam ja uzeo taj isti manual, prelistao ga površno (5 sekundi) i dao ti gotovo rešenje. To je malko sramota. Bar da je neki skript u pitanju, nego najobičnije korišćenje grep komande.
Potpis
int rand(void);

Those who do not understand Unix are condemned to reinvent it, poorly.

Upali lampicu — koristi Jabber!
Re: treba mi skripta 02.05.2002. u 18:06 · pre 298 meseci #3
e randome pre nego sto tako krenes da pises da sam se zaleteo a sve pise u manualu, ajde ti prvo isprobaj to sto si napisao pa tek onda pisi. procitao sam taj deo manuala ali NECE da razdvoji rezultate !!!!!!

a ne znam shell scripting i mislim da se moze uraditi shell skripta koja ce to sa lakocom da obradi.
Re: treba mi skripta 03.05.2002. u 16:51 · pre 298 meseci #4
Zaista misliš da nisam probao i da pričam napamet?

Code:

random@amber:~$ cat test.txt
01 tralala la la la la la la
02 trala lala la la
03 trala lala la
04 trala lala la la la
05 trala lala TEST la lala
06 tralala la la la la la la
07 trala lala la la
08 trala lala la la
09 tralala la la la la la la
10 trala lala la la la
11 trala TEST lala la
12 trala lala la la
13 trala lala la
14 trala lala la la la
15 trala lala la la
16 trala lala la
17 trala TEST lala la la la
18 trala lala la la la
random@amber:~$ grep -B 2 -C 2 TEST test.txt
03 trala lala la
04 trala lala la la la
05 trala lala TEST la lala
06 tralala la la la la la la
07 trala lala la la
--
09 tralala la la la la la la
10 trala lala la la la
11 trala TEST lala la
12 trala lala la la
13 trala lala la
--
15 trala lala la la
16 trala lala la
17 trala TEST lala la la la
18 trala lala la la la
random@amber:~$ grep --version
grep (GNU grep) 2.5

Copyright 1988, 1992-1999, 2000, 2001 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

random@amber:~$


Stavio sam 2 umesto 10 radi kratkoće.

Ako se pak nađu dva reda jedan do drugog da sadrže traženi regularni izraz, grep neće dva puta ponavljati redove, već će prikazati 10 redova iznad prvog i 10 redova ispod poslednjeg. Možda te to buni.
Potpis
int rand(void);

Those who do not understand Unix are condemned to reinvent it, poorly.

Upali lampicu — koristi Jabber!
Re: treba mi skripta 03.05.2002. u 18:22 · pre 298 meseci #5
a tooo je problem ....
dobro je sto si napisao verziju grep-a jer ja imam stariji grep ... :(((
idem sada da stavim novi jer i ovom nece da odvaja kao tebi

hvala
Re: treba mi skripta 03.05.2002. u 20:45 · pre 298 meseci #6
Vlado dobio si peticu kao korisnik od mene!
Druga stvar - momire, mozda tvoj problem nije samo verzija GREP-a. Nacin na koji koristis grep je takodje mozda problem, pogledaj kakav izlaz zapravo dobijas.

Ono sto ljudi ovde ne znaju je da momiru ovo ne treba za ovako glupu stvar, vec za obradjivanje jednog strima... Covek ce da startuje neku aplikaciju koja ce da "pljucka" par megabajta teksta dok bude radila, a grep treba da iz svega toga izvuce ono sto momiru treba...
Potpis
Dejan Lekic
software engineer, MySQL/PgSQL DBA, sysadmin
Re: treba mi skripta 21.05.2002. u 12:21 · pre 297 meseci #7
Mozda malo nevezano sa ovom temom, ali ako neko stvarno treba pomoc sa shell skriptama,
prva i osnovna stvar je da se kaze o kojem OS-u se radi, koja je verzija sed-a, awk-a i grep-a,
pa tek onda da se kaze o cemu se radi.
Meni licno se desavalo da napisem skriptu koja radi savrseno na HP-UX, AIX, IRIX, SINIX, i da je skopiram na Solaris, i da ne radi, zato sto awk na solarisu ima neki mali bug, i za to postoji patch,
a na linuxu nista ne radi zato sto gnu sed drugacije interpretira stvari od onoga koji stize na odredjenim platformama.

Potpis
Za automatsko dobijanje Super Moderatorskog statusa na Elitesecurity forumima pritisnite Alt+F4
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme