Fórum Root.cz
Hlavní témata => Vývoj => Téma založeno: webhope 26. 06. 2011, 20:47:37
-
Zdravím
Jak přidat řádek na začátek souboru v bashi?
-
Nejjednodušší je vytvořit nový soubor, do něj nejdřív vložit požadovaný řadek a pak přdat již existující obsah, možná byš šel udělat nějaký trik s pomocí sed.
echo "PRVNI NOVA RADKA >soubo.tmp
cat soubor_puvodni >>soubo.tmp
-
No, kdyby se dala sečíst proměnná $filename a výstup z toho catu, tak bych nemusel vytvářet soubor navíc.
Už jsem dlouho neprogramoval ale zkusím něco z pameti
data=$(cat original.txt)+$filename
a ted si nevypominam jak ulozit ty data (prepsat original.txt)
-
tedy vlastne
data=$filename+$(cat original.txt)
echo $data>original.txt
to by snad mohlo fungovat
-
Uz to skoro mam ale jak tam zadat zalomeni radku?
data="newfilename"\n$(cat changes.txt)
echo $data
-
Bud takto:
data="newfilename
$(cat changes.txt)"
echo "$data"
alebo takto:
data="newfilename\n$(cat changes.txt)"
echo -e $data
Nie som si vsak isty ci je parameter -e pre echo v norme
-
Diky tak to uz funguje
ja zkousel toto
echo -e newfilename\n$(cat $filename);
a to nefungovalo
-
Zdravím
Jak přidat řádek na začátek souboru v bashi?
sed -ie '1i\novy radek' soubor
pripadne ak nemate zaujem zmenit obsah suboru, iba pridat riadok a vypisat povodny:
sed -e '1i\novy radek' soubor
-
Ještě ten první kod ma chybu:
filename="./$disk_dir/$subdir/changes.txt";
echo -e "$target\n$(cat $filename)"; # zapsat informaci do souboru
Vystup:
cat: ./: je adresářem
cat: ATA/Win-sda1-drivers/changes.txt: Adresář nebo soubor neexistuje
sda1_06_2011-PS_akce+FF_profile_a_pluginy+Thunderbird_profil+ikony_na_plose.dd
Tam za catem by mely byt uvozovky, ale uvozovky uvnit uvozovek (radek 2) to nejde. Jak to doresit?
(Uvedena cesta musi byt spravna, jelikoz jsem prave pouzil cestu
filename="./$disk_dir/$subdir/$target"
jako cil pro prikaz dd)
-
Uvodzovky v uvodzovkach samozrejme mozu byt, len ich treba "escape"-ovat:
test="Ahoj \"Webhope"