Portál AbcLinuxu, 26. července 2025 18:24


Dotaz: Pridat novy riadok

19.7.2010 14:12 pridat
Pridat novy riadok
Přečteno: 213×
Odpovědět | Admin
Potrebujem v priecinku XY do vsetkych suborov na zaciatok pridat riadok TAJNE, su to obycajne .txt subory. Ako sa to da? Skusal som rozne kombinacie s echo ale nikdy som nedocielil naraz do vsetkych a zaroven na zaciatok. D.
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

19.7.2010 14:23 Ash | skóre: 53
Rozbalit Rozbalit vše Re: Pridat novy riadok
Odpovědět | | Sbalit | Link | Blokovat | Admin
for i in *; do
  sed -i -e "1 i;q \\rTAJNE" "$i"
done
19.7.2010 14:24 Ash | skóre: 53
Rozbalit Rozbalit vše Re: Pridat novy riadok
Jo nefunguje to u souborů nulové délky.
19.7.2010 14:28 Vojtěch Horký | skóre: 39 | blog: Vojtův zápisník | Praha
Rozbalit Rozbalit vše Re: Pridat novy riadok
Tohle by mělo fungovat i pro prázdné soubory:
(echo 0a; echo "TAJNE"; echo "."; echo "w"; echo "q") | ed "$i"
I am always ready to learn although I do not always like to be taught. (W. Churchill)
michich avatar 19.7.2010 14:27 michich | skóre: 51 | blog: ohrivane_parky
Rozbalit Rozbalit vše Re: Pridat novy riadok
Odpovědět | | Sbalit | Link | Blokovat | Admin
sed -e '1 iTAJNE' -i *.txt
19.7.2010 14:38 soyo
Rozbalit Rozbalit vše Re: Pridat novy riadok
Odpovědět | | Sbalit | Link | Blokovat | Admin
tmpFile=tmp.txt; for i in XY/*.txt; do echo $i; echo "TAJNE" > ${tmpFile}; cat $i >> ${tmpFile}; mv ${tmpFile} $i; done

alebo

for i in XY/*.txt; do echo $i; sed -i '1s/^\(.\+\)$/TAJNE\n\1/' "$i"; done
20.7.2010 23:00 pridat
Rozbalit Rozbalit vše Re: Pridat novy riadok
Odpovědět | | Sbalit | Link | Blokovat | Admin
Dik za rady, funguje. Ako by sa to dalo riesit ze pridat len do suborov ktore uz obsahuju text napr. "ahoj". Cize pridat text napr. "XY" na zaciatok suboru, pokial je v subore text "ahoj".
20.7.2010 23:31 Vojtěch Horký | skóre: 39 | blog: Vojtův zápisník | Praha
Rozbalit Rozbalit vše Re: Pridat novy riadok
+- nějak takhle:
if grep -q ahoj "$i"; then
    přidej řádek;
fi
I am always ready to learn although I do not always like to be taught. (W. Churchill)

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.