Portál AbcLinuxu, 13. srpna 2025 17:23


Dotaz: sed a vložení textu na začátek řádku

31.7.2005 17:36 Wraper
sed a vložení textu na začátek řádku
Přečteno: 604×
Odpovědět | Admin
Zdravím všechny, jsem uplná lama v linuxu a píšu první script.Potřebuji v existujícím souboru vložit před řádek, jehož číslo je v proměnné (třeba $line) znak #.při pokusech na téma

sed -i 15\# soubor

se mi nedaří zajistit aby za vložením nebylo také odřádkování.(ta 15 je tam proto,že nejdřív řeším vlastní vkládání a pak až nakousnu zadávání adresy z proměnné)
Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

31.7.2005 17:45 #Tom
Rozbalit Rozbalit vše Re: sed a vložení textu na začátek řádku
Odpovědět | | Sbalit | Link | Blokovat | Admin
Můžete zkusit tohle:
sed -i "s/^\($line\)/\1\#/" soubor
31.7.2005 18:11 Wraper
Rozbalit Rozbalit vše Re: sed a vložení textu na začátek řádku
někde bude drobná chybka, skončilo to chybovým hlášením :

sed -e výraz #1, znak 14: unterminated `s' command

přesné zadání bylo:

sed -i "s/^\($iptab_line\)/\1\#" /etc/sysconfig/iptables
31.7.2005 18:21 Wraper
Rozbalit Rozbalit vše Re: sed a vložení textu na začátek řádku
omlouvám se, špatně jsem to opsal :((((
31.7.2005 18:30 Wraper
Rozbalit Rozbalit vše Re: sed a vložení textu na začátek řádku
Nicméně s cílovým souborem se nic nestane, nevíte pls co dělám špatně? Musím ještě výstup někam přesměrovávat?
31.7.2005 18:36 Michal Marek (twofish) | skóre: 55 | blog: { display: blog; } | Praha
Rozbalit Rozbalit vše Re: sed a vložení textu na začátek řádku
v $line je číslo řádky, takže spíš
sed -i "$line s/^/#/"
(# uvnitř příkazu netřeba escapovat).

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.