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 18:11 | Nová verze

    Byla vydána verze 6.0 webového aplikačního frameworku napsaného v Pythonu Django (Wikipedie). Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    dnes 05:55 | Nová verze

    Po více než 7 měsících vývoje od vydání verze 6.8 byla vydána nová verze 6.9 svobodného open source redakčního systému WordPress. Kódové jméno Gene bylo vybráno na počest amerického jazzového klavíristy Gene Harrise (Ray Brown Trio - Summertime).

    Ladislav Hagara | Komentářů: 10
    dnes 05:11 | Komunita

    Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za listopad (YouTube).

    Ladislav Hagara | Komentářů: 0
    dnes 01:55 | Nová verze

    Google Chrome 143 byl prohlášen za stabilní. Nejnovější stabilní verze 143.0.7499.40 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Opraveno bylo 13 bezpečnostních chyb.

    Ladislav Hagara | Komentářů: 0
    včera 19:33 | Nová verze

    Společnost Valve aktualizovala přehled o hardwarovém a softwarovém vybavení uživatelů služby Steam. Podíl uživatelů Linuxu dosáhl 3,2 %. Nejčastěji používané linuxové distribuce jsou Arch Linux, Linux Mint a Ubuntu. Při výběru jenom Linuxu vede SteamOS Holo s 26,42 %. Procesor AMD používá 66,72 % hráčů na Linuxu.

    Ladislav Hagara | Komentářů: 0
    včera 15:22 | IT novinky

    Canonical oznámil (YouTube), že nově nabízí svou podporu Ubuntu Pro také pro instance Ubuntu na WSL (Windows Subsystem for Linux).

    Ladislav Hagara | Komentářů: 0
    včera 13:11 | IT novinky

    Samsung představil svůj nejnovější chytrý telefon Galaxy Z TriFold (YouTube). Skládačka se nerozkládá jednou, ale hned dvakrát, a nabízí displej s úhlopříčkou 10 palců. V České republice nebude tento model dostupný.

    Ladislav Hagara | Komentářů: 4
    včera 12:33 | Nová verze

    Armbian, tj. linuxová distribuce založená na Debianu a Ubuntu optimalizovaná pro jednodeskové počítače na platformě ARM a RISC-V, ke stažení ale také pro Intel a AMD, byl vydán ve verzi 25.11.1. Přehled novinek v Changelogu.

    Ladislav Hagara | Komentářů: 1
    včera 04:00 | Nová verze

    Byla vydána nová verze 15.0 svobodného unixového operačního systému FreeBSD. Podrobný přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 7
    včera 03:00 | Nová verze

    UBports, nadace a komunita kolem Ubuntu pro telefony a tablety Ubuntu Touch, vydala Ubuntu Touch 24.04 1.1 a 20.04 OTA-11. Vedle oprav chyb a drobných vylepšení je řešen také středně závažný bezpečnostní problém.

    Ladislav Hagara | Komentářů: 0
    Jaké řešení používáte k vývoji / práci?
     (34%)
     (47%)
     (19%)
     (18%)
     (23%)
     (15%)
     (25%)
     (16%)
     (18%)
    Celkem 426 hlasů
     Komentářů: 18, poslední včera 18:34
    Rozcestník

    Dotaz: Hledání řetězce v souborech

    2.4.2013 14:08 Jura
    Hledání řetězce v souborech
    Přečteno: 8475×
    Dobrý den vespolek.

    Je nějaký jednodušší způsob jak hledat určitý řetězec v souborech než tento dlouhý sled příkazů ?

    find / -type f -iname '*.php' -exec grep -i 'hledaný textXY' {} \; -print0

    Děkuji za napovězení

    Jura

    Odpovědi

    2.4.2013 14:15 Kit
    Rozbalit Rozbalit vše Re: Hledání řetězce v souborech
    Používám odlehčenější verzi, která však funguje mírně odlišně:
    grep -i 'hledaný textXY' *.php
    případně
    grep -i 'hledaný textXY' */*.php
    apod. Neprohledává sice adresářový strom do hloubky, ale pro mé účely vyhovuje.
    2.4.2013 14:34 dustin | skóre: 63 | blog: dustin
    Rozbalit Rozbalit vše Re: Hledání řetězce v souborech
    A když místo grep dáš rgrep, bude prohledávat i v podadresářích.
    2.4.2013 15:00 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Hledání řetězce v souborech
    U GNU grepu, který je v linuxu obvyklý, stačí použít přepínač -r
    2.4.2013 15:04 Kit
    Rozbalit Rozbalit vše Re: Hledání řetězce v souborech
    To není tak jednoznačné. grep -r sice běžně používám, ale
    rgrep -i 'hledany string' *.php
    v podadresářích hledat nebude. Nemá jejich názvy.
    2.4.2013 15:12 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Hledání řetězce v souborech
    grep(1):
           --include=GLOB
                  Search  only  files whose base name matches GLOB (using wildcard
                  matching as described under --exclude).
    
    2.4.2013 16:13 Kit
    Rozbalit Rozbalit vše Re: Hledání řetězce v souborech
    Než bych hledal všechny atributy grepu, asi bych v takových případech raději použil find z původního dotazu.

    Jinak ale dobré, jen bych uvítal kratší zápis parametru.
    grep -ri 'hledaný textXY' --include="*.php" /
    bude zřejmě odpovědí na původní dotaz.
    2.4.2013 15:13 dustin | skóre: 63 | blog: dustin
    Rozbalit Rozbalit vše Re: Hledání řetězce v souborech
    Jasně, obvykle hledám v celém podstromu, koncovka mě nepálí. Takže typicky

    rgrep něco /etc
    2.4.2013 16:02 Kit
    Rozbalit Rozbalit vše Re: Hledání řetězce v souborech
    Takže ve stromu prolezeš i všechny multimediální soubory. Poněkud nepraktické a mimo /etc (ve kterém toho z PHP asi moc nebude) zřejmě i lenošné.
    2.4.2013 17:53 dustin | skóre: 63 | blog: dustin
    Rozbalit Rozbalit vše Re: Hledání řetězce v souborech
    A ty máš multimediální soubory namíchané mezi php skripty?

    Když hledám, tak vím, kde co přibližně mám. Budu-li hledat text mezi velkými binárkami, nepoužiji rgrep. To dá rozum.
    Tarmaq avatar 2.4.2013 19:09 Tarmaq | skóre: 39
    Rozbalit Rozbalit vše Re: Hledání řetězce v souborech
    z tazatelova dotazu je zrejme, ze hleda PHP soubory od rootu, takze je opravdu zbytecne prochazet vsechny soubory nezavisle na tom zda obsahuji binarni data..
    Don't panic!
    2.4.2013 19:20 dustin | skóre: 63 | blog: dustin
    Rozbalit Rozbalit vše Re: Hledání řetězce v souborech
    Tak to jo, toho jsem si nevšiml. Hledat od rootu mě nějak nenapadlo :)
    3.4.2013 09:15 Kit
    Rozbalit Rozbalit vše Re: Hledání řetězce v souborech
    Samozřejmě. A mám tam i databáze a šablony, které grepem prolézat nechci.
    3.4.2013 11:38 dustin | skóre: 63 | blog: dustin
    Rozbalit Rozbalit vše Re: Hledání řetězce v souborech
    Pokud není dat mnoho (gigabajty), používám rgrep napřímo i za cenu pár false positives. Než odladím filtr přes koncovky, mám to dávno nalezené. Nebo výstup rgrepu přefiltruji grepem na php (v názvu souboru na začátku řádku lezoucího z rgrepu) a dále tím zredukuji false positives.

    Nikomu tenhle postup nenutím, jen se mi osvědčil a používám několikrát denně, protože to mám hotové nejrychleji a vím, že to dělá, přesně co chci. Když jde o větší strom s daty, pustím si to třeba v mc, snadno se pak skáče rovnou do nalezených souborů na místo s výskytem hledaného textu. Zápis execu ve findu mi nevyhovuje, příliš dlouho jej musím testovat. Ale jak říkám, každému sedí něco jiného. A tak to má být :)
    3.4.2013 15:17 potato
    Rozbalit Rozbalit vše Re: Hledání řetězce v souborech
    Přesně naopak: nehledám-li v něčem, co může být čerstvé a ještě nezacachované locate, neprocházím strom vůbec, o grepu v celém stromu ani nemluvě:
    locate -0 '*.php' | xargs -0 grep foobar
    3.4.2013 19:05 dustin | skóre: 63 | blog: dustin
    Rozbalit Rozbalit vše Re: Hledání řetězce v souborech
    Hezká vychytávka. Vyžaduje to však zapnutou indexaci locate, což např. na našich debianích serverech není.
    6.2.2015 04:53 ďobo
    Rozbalit Rozbalit vše Re: Hledání řetězce v souborech
    find . | xargs grep 'neco' -l
    2.4.2013 19:53 petr_p | skóre: 59 | blog: pb
    Rozbalit Rozbalit vše Re: Hledání řetězce v souborech
    Místo \; bych dal + a grepu bych přihodil parametr -q, ať se nemíchá s výstupem findu.
    3.4.2013 23:30 dik
    Rozbalit Rozbalit vše Re: Hledání řetězce v souborech
    grep -irl 'hledany text' /muj/dir

    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.