Portál AbcLinuxu, 5. června 2025 08:49


Dotaz: Načteni obsahu textu ze txt souboru

24.1.2011 19:08 krmi74
Načteni obsahu textu ze txt souboru
Přečteno: 489×
Odpovědět | Admin
Snažím se ve scriptu pro /bin/bash načíst z textového souboru text prvního řádku, ten řádek obsahuje třímístné číslo a já bych pouze toto číslo chtěl načíst jako proměnnou. Ale nedaří se mi to dát dohromady. Můžete někdo poradit.
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

24.1.2011 19:55 12345 | skóre: 41 | blog:
Rozbalit Rozbalit vše Re: Načteni obsahu textu ze txt souboru
Odpovědět | | Sbalit | Link | Blokovat | Admin
line=$(head -n1 soubor.txt)
24.1.2011 19:56 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
Rozbalit Rozbalit vše Re: Načteni obsahu textu ze txt souboru
Odpovědět | | Sbalit | Link | Blokovat | Admin
A tak přesně nefunguje?
pomocí head -n 1 soubor dostanete 1.řádek
a třeba pomocí sed -n 's/^.*\([0-9]\{3,3\}\).*$/\1/p' dostanete některé tři čísla po sobě jdoucí (což lze upřesnit)
No, a když se to spojí head -n 1 soubor | sed -n 's/^.*\([0-9]\{3,3\}\).*$/\1/p'
To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
24.1.2011 23:15 krmi74
Rozbalit Rozbalit vše Re: Načteni obsahu textu ze txt souboru
První řádek s textového souboru se vypíše, ale příkaz sed se neukončí a ani nezobrazí výsledek. Ještě bych se chtěl zeptat, jak upravit vzorek, aby se vypsalo číslo s jakýmkoli počtem číslic z řádku a případně, jakou operací upravit ten řádek v textu, aby zůstaly pouze číslice, bez jakýchkoli jiných znaků a uložila se změna, pokud je to možné
24.1.2011 23:58 l4m4
Rozbalit Rozbalit vše Re: Načteni obsahu textu ze txt souboru
Editace souboru in-place: sed -i

Ponechání pouze číslic z prvního řádku: sed -n '1{s/[^[:digit:]]//g;p;Q}' soubor

V případě dalšího dotazu ,a co kdyby...` by se možná hodilo podívat na základy regulárních výrazů...
25.1.2011 07:53 krmi74
Rozbalit Rozbalit vše Re: Načteni obsahu textu ze txt souboru
Děkuji, díval jsem se po různých návodech, ale žádný kompletní jsem nenašel. Pokud mi můžete doporučit nějakou stránku, prosím napište mi odkaz, děkuji.
25.1.2011 08:50 l4m4
Rozbalit Rozbalit vše Re: Načteni obsahu textu ze txt souboru
Kompletní bude mít několik set stran a popisovat všechny alternativy, omezení a speciality implementace různých typů regulárních výrazů v různých jazycích. I kdyby taková věc existovala, pochybuji, že by ti pomohla.

Dokumentace v info sed je kompletní pro sed, IMO dostačující a obsahuje řadu příkladů.
25.1.2011 10:52 Semo | skóre: 45 | blog: Semo
Rozbalit Rozbalit vše Re: Načteni obsahu textu ze txt souboru
Odpovědět | | Sbalit | Link | Blokovat | Admin
Riesenie v cistom bashi, bez spustania ineho procesu:
read a <subor
[[ $a =~ ([0-9]{3}) ]]
echo $BASH_REMATCH
If you hold a Unix shell up to your ear, you can you hear the C.

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.