Portál AbcLinuxu, 13. května 2025 21:47

Dotaz: BASH - jak poslat vysledek locate jinemu programu (cat)

14.12.2008 17:49 Drew | skóre: 15 | blog: Supi_hnizdo | Praha
BASH - jak poslat vysledek locate jinemu programu (cat)
Přečteno: 471×
Odpovědět | Admin
Ahoj, hledal jsem na webu, ale nic jsem nenasel a moje experimentovani taky nic neprineslo, a pritom mi prijde, ze co chci, by melo byt desne lehke.

V jednom adresari mam ulozene recepty jako jednoduche textove soubory, vetsinou je ctu skrze prikazovou radku. Adresar je hluboko ulozen v adresarove strukture, tak jednotlive recepty vetsinou hledam pres locate, a na vysledek pak aplikuju cat. tedy
drew@bill:~$ locate strudl
/home/drew/Desktop/Osobni/Recepty/strudl.txt


drew@bill:~$ cat /home/drew/Desktop/Osobni/Recepty/strudl.txt
30 Dg hladké mouky
3 Dg cukru krupice
špetka soli
[redakcne kraceno]
rad bych tuhle proceduru udelal jednim prikazem, tedy neco jako
$locate strudl |cat
Ale nejde mi to, neporadi nekdo?
Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

14.12.2008 17:56 tomk
Rozbalit Rozbalit vše Re: BASH - jak poslat vysledek locate jinemu programu (cat)
Odpovědět | | Sbalit | Link | Blokovat | Admin

Ahoj,

xargs znas?

locate strudl | xargs cat

Jde o to, ze cat cte text bud ze standardniho vstupu (tedy nikoliv ze souboru, ktery dostane na standardnim vstupu) nebo ze souboru uvedeneho jako argument.

 

Tomas

14.12.2008 18:00 mak
Rozbalit Rozbalit vše Re: BASH - jak poslat vysledek locate jinemu programu (cat)
Odpovědět | | Sbalit | Link | Blokovat | Admin

cat $(locate strudl)

 

14.12.2008 18:50 qk | skóre: 15 | blog: qk_develop
Rozbalit Rozbalit vše Re: BASH - jak poslat vysledek locate jinemu programu (cat)
Odpovědět | | Sbalit | Link | Blokovat | Admin

variace na odpovedi nade mnou je cat `locate strudl` (hlavne dat spravne zpetne uvozovky ;)

16.12.2008 10:34 Topper
Rozbalit Rozbalit vše Re: BASH - jak poslat vysledek locate jinemu programu (cat)

 Pravda, ale je to stary zapis. Doporucuji pouzit predchozi $() ..

2.1.2009 14:39 Drew | skóre: 15 | blog: Supi_hnizdo | Praha
Rozbalit Rozbalit vše Re: BASH - jak poslat vysledek locate jinemu programu (cat)
Odpovědět | | Sbalit | Link | Blokovat | Admin
Všem děkuji, zapomněl jsem dát "sleduj", tak jsem vaše odpovědi nezaznamenal. Mezitím jsem vlastními silami přišel na xargs, ale i tak mnohé díky.

Založit nové vláknoNahoru

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

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.