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 02:11 | Komunita

    Všem čtenářkám a čtenářům AbcLinuxu krásné Vánoce.

    Ladislav Hagara | Komentářů: 5
    dnes 02:00 | Nová verze

    Byla vydána nová verze 7.0 linuxové distribuce Parrot OS (Wikipedie). S kódovým názvem Echo. Jedná se o linuxovou distribuci založenou na Debianu a zaměřenou na penetrační testování, digitální forenzní analýzu, reverzní inženýrství, hacking, anonymitu nebo kryptografii. Přehled novinek v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 1
    včera 18:33 | Nová verze

    Vývojáři postmarketOS vydali verzi 25.12 tohoto před osmi lety představeného operačního systému pro chytré telefony vycházejícího z optimalizovaného a nakonfigurovaného Alpine Linuxu s vlastními balíčky. Přehled novinek v příspěvku na blogu. Na výběr jsou 4 uživatelská rozhraní: GNOME Shell on Mobile, KDE Plasma Mobile, Phosh a Sxmo.

    Ladislav Hagara | Komentářů: 0
    včera 13:55 | Nová verze

    Byla vydána nová verze 0.41.0 multimediálního přehrávače mpv (Wikipedie) vycházejícího z přehrávačů MPlayer a mplayer2. Přehled novinek, změn a oprav na GitHubu. Požadován je FFmpeg 6.1 nebo novější a také libplacebo 6.338.2 nebo novější.

    Ladislav Hagara | Komentářů: 0
    včera 12:44 | Nová verze

    Byla vydána nová verze 5.5 (novinky) skriptovacího jazyka Lua (Wikipedie). Po pěti a půl letech od vydání verze 5.4.

    Ladislav Hagara | Komentářů: 0
    22.12. 23:44 | Nová verze

    Byla vydána nová verze 5.4.0 programu na úpravu digitálních fotografií darktable (Wikipedie). Z novinek lze vypíchnout vylepšenou podporu Waylandu. Nejnovější darktable by měl na Waylandu fungovat stejně dobře jako na X11.

    Ladislav Hagara | Komentářů: 0
    21.12. 05:00 | Nová verze

    Byla vydána beta verze Linux Mintu 22.3 s kódovým jménem Zena. Podrobnosti v přehledu novinek a poznámkách k vydání. Vypíchnout lze, že nástroj Systémová hlášení (System Reports) získal mnoho nových funkcí a byl přejmenován na Informace o systému (System Information). Linux Mint 22.3 bude podporován do roku 2029.

    Ladislav Hagara | Komentářů: 2
    21.12. 01:55 | Nová verze

    GNU Project Debugger aneb GDB byl vydán ve verzi 17.1. Podrobný přehled novinek v souboru NEWS.

    Ladislav Hagara | Komentářů: 0
    19.12. 17:22 | IT novinky

    Josef Průša oznámil zveřejnění kompletních CAD souborů rámů tiskáren Prusa CORE One a CORE One L. Nejsou vydány pod obecnou veřejnou licenci GNU ani Creative Commons ale pod novou licencí OCL neboli Open Community License. Ta nepovoluje prodávat kompletní tiskárny či remixy založené na těchto zdrojích.

    Ladislav Hagara | Komentářů: 14
    19.12. 17:00 | Komunita

    Nový CEO Mozilla Corporation Anthony Enzor-DeMeo tento týden prohlásil, že by se Firefox měl vyvinout v moderní AI prohlížeč. Po bouřlivých diskusích na redditu ujistil, že v nastavení Firefoxu bude existovat volba pro zakázání všech AI funkcí.

    Ladislav Hagara | Komentářů: 1
    Kdo vám letos nadělí dárek?
     (30%)
     (1%)
     (10%)
     (3%)
     (1%)
     (3%)
     (13%)
     (23%)
     (14%)
    Celkem 69 hlasů
     Komentářů: 17, poslední dnes 00:24
    Rozcestník

    Dotaz: Jak odstranit řádek v souboru

    16.12.2021 21:25 host
    Jak odstranit řádek v souboru
    Přečteno: 521×
    Dobrý večer, jak bych mohl pomocí bash odstranit řádek X když je číslo řádku uloženo v proměnné? Předem děkuji.

    Řešení dotazu:


    Odpovědi

    Jendа avatar 16.12.2021 21:36 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Jak odstranit řádek v souboru
    Slepit z
    tail -n +9 file    # skip prvních 8
    a
    head -n 7 file     # prvních 7 řádků
    16.12.2021 21:46 host
    Rozbalit Rozbalit vše Re: Jak odstranit řádek v souboru
    Díky, jak slepit?
    Jendа avatar 16.12.2021 22:13 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Jak odstranit řádek v souboru
    /tmp> cat file 
    a
    b
    c
    d
    e
    f
    g
    h
    j
    k
    l
    /tmp> cat file | head -n 7 file; cat file | tail -n +9 file
    a
    b
    c
    d
    e
    f
    g
    j
    k
    l
    /tmp> 
    
    16.12.2021 22:00 z_sk | skóre: 34 | blog: analyzy
    Rozbalit Rozbalit vše Re: Jak odstranit řádek v souboru
    skeep=5; cat file |awk '{if (NR != '$skeep') print $0}'
    debian.plus@protonmail.com
    16.12.2021 22:09 host
    Rozbalit Rozbalit vše Re: Jak odstranit řádek v souboru
    Díky, to ae žádný řádek v souboru nesmaže.
    17.12.2021 06:47 Andrej | skóre: 51 | blog: Republic of Mordor
    Rozbalit Rozbalit vše Re: Jak odstranit řádek v souboru

    UUOC není dobrá rada.

    Jendа avatar 17.12.2021 11:05 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Jak odstranit řádek v souboru
    UUoC vzniká logicky z „cat soubor... sakra to je dlouhé, ještě potřebuju grep/less - šipka nahoru, |grep aaa“.

    UUoC je použitelnější, protože „cat soubor|grep foo... sakra potřebuju hledat bar, ne foo - šipka nahoru, ←←←, bar“.

    UUoC brání překvapivému a nečekanému chování u nástrojů pracujících inplace (gzip a bzip2 co smažou originální soubor pokud si na to člověk nevzpomene a nedá -k).

    UUoC brání nahodilému přepsání při neoscapování grep "Jenda>" irc.log
    16.12.2021 22:13 z_sk | skóre: 34 | blog: analyzy
    Rozbalit Rozbalit vše Re: Jak odstranit řádek v souboru
    skeep=5; cat file |awk '{if (NR != '$skeep') print $0}' > file_; mv file_ file
    debian.plus@protonmail.com
    16.12.2021 22:36 host
    Rozbalit Rozbalit vše Re: Jak odstranit řádek v souboru
    Chlapy díky ale zeptal jsem se asi z neznalosti blbě, Omlouvám se. Nevěděl jsem, že se řádky posunou. Potřebuji ten řádek odstranit ale aby tam zůstal prázdný řádek, nevím jak to napsat. Zkusím příklad.
    původní soubor
    
    1
    2
    3
    4
    5
    
    chci odstranit řádek 3
    
    upravený soubor
    
    1
    2
    
    4
    5
    16.12.2021 22:41 z_sk | skóre: 34 | blog: analyzy
    Rozbalit Rozbalit vše Re: Jak odstranit řádek v souboru
    skeep=5; cat file |awk '{if (NR == '$skeep') print ""; else print $0}' > file_; mv file_ file
    debian.plus@protonmail.com
    Jendа avatar 16.12.2021 22:49 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Jak odstranit řádek v souboru
    /tmp> cat file | head -n 7 file; echo; cat file | tail -n +9 file
    a
    b
    c
    d
    e
    f
    g
    
    j
    k
    l
    
    nechci rejpat, ale echo bys zvládnout mohl… Možná by stálo za to učit se základy shellu nějak systematicky.
    16.12.2021 22:59 jejda | skóre: 27 | blog: jejda
    Rozbalit Rozbalit vše Re: Jak odstranit řádek v souboru
    Bych ty jednotlivé řádky první očísloval programem nl, potom grepnul všecko co nezačíná číslem z proměnné a nakonec to pomocné číslování odřezal cutem. Řekněme že chcu smazat řádek 30 tak:
    n=30; nl -n ln soubor.txt | grep -v "^$n\b" | cut -f2-
    Řešení 2× (Semo, billgates)
    17.12.2021 00:29 tttttttttttttt
    Rozbalit Rozbalit vše Re: Jak odstranit řádek v souboru
    Nahrazení řádku za prázdný:
    export X=3
    sed -i "${X}s/.*//" file.txt
    
    Smazání třetího řádku
    sed -i "3d" file.txt
    
    17.12.2021 11:19 Semo | skóre: 45 | blog: Semo
    Rozbalit Rozbalit vše Re: Jak odstranit řádek v souboru
    ten export je zbytocny
    If you hold a Unix shell up to your ear, you can you hear the C.
    18.12.2021 23:00 host
    Rozbalit Rozbalit vše Re: Jak odstranit řádek v souboru
    Nahrazení řádku za prázdný:
    sed -i "${X}s/.*//" file.txt
    
    Tak jsem to vyzkoušel ale dostávám chybu:
    sed: 1: "file.txt": command a expects \ followed by text
    19.12.2021 00:40 billgates | skóre: 27
    Rozbalit Rozbalit vše Re: Jak odstranit řádek v souboru
    Normalne to funguje:
    [bill@win10pro ~]$ X=3; sed -i "${X}s/.*//" file.txt
    [bill@win10pro ~]$ cat file.txt
    a
    b
    
    d
    e
    f
    g
    h
    
    19.12.2021 01:41 Krysa Vasilisa
    Rozbalit Rozbalit vše Re: Jak odstranit řádek v souboru
    Smazani radku:

    echo -e "${linenumber}d\nw\nq"|ed "$filename"

    Nahrazeni radku prazdnym:

    i=0; cat "$file" | while read line; do (( i+=1 )); if (( i==linenumber )); then echo; else echo "$line"; fi; done

    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.