Blog
## caret ^ - It means "beginning of the line." // The caret ^ and the dollar sign $ are meta-characters that respectively match the empty string at the beginning and end of a line.
## pokud se ma nahrazovat nejaky zvlastni znak (jako treba*) je potreba pred tento znak vzdy dat zpetne lomitko
## flag -i rovnou přepisuje editovany soubor!!
sed 's/retez1/retez2/g' soubor
<===> Pro náhradu kazdeho vyskytu řetězce v celém souboru stačí zadat volbu g (global)
sed 's/red/green/p' soubor
<===> nahradí první výskyt slova RED za GREEN a ten řádek, kde se prohození provedlo zduplikuje
sed 's/Wed/Fri/' priklad05
<===> nahradi vsechna slova WED za slova FRI
sed 's/unix/linux/2' priklad
<===> nahradi vsechna slova UNIX za slova LINUX ale v tomto pripade, pokud je v jedne radce vice slov UNIX tak prohodi jen DRUHY vyskyt
sed 's/:/!/g' priklad05
<===> nahradi vsechny dvojtecky (:) ve vsech radcich za vykricniky (!)
sed '2 s/---/A/' priklad07
<===> nahradi POUZE v druhem radku prvni --- za pismeno A (dalsi --- v rade vsak ponecha)
sed '1,3 s/sto/tisic/' soubor
<===> výměnu provede pouze mezi prvním až třetím řádkem
sed 's/\*\*\*/A/g2' priklad05
<===> nahradi vsechny *** (az druhy vyskyt) v kazdem radku za pismeno A (ty prvni *** ponecha) // zpetna lomitka jsou tam z duvodu specialnyho znaku jakym je *
sed 's/ /\n/g' priklad05
<===> vsechny mezery (prazdne mista) zmeni na "nove radky"
sed '/07/d' priklad
<===> smaze vsechny radky, kde se objevi (kdekoli) cislo 07
sed '/^$/d' priklad
<===> smaze vsechny prazdne radky v souboru priklad
sed '/Fri/!d' priklad
<===> smaze vsechny radky, ktere neobsahuji slovo Fri
sed '/Dell/!d' data4 | awk '{ print $1 }' FS=' ' | sort -V
<===> smaze ty radky, kde neni uvedeno slovo Dell, pote zobrazi pouze prvni sloupec (pokud jsou oddelene mezerou) a nakonec seradi dle velikosti cisel
sed '/Dell/d' data4 | awk '{ print $1, $5 }' | sort -V
<===> nejdrive vybere jen ty radky, kde je slovo Dell, pak vypise 1 a 5 sloupec a seradi sestupne dle sloupce 1
echo "maly priklad" | sed 's/maly/VELKY/'
<===> zmeni slovo maly na slovo VELKY
sed '/^#/d; /^ *$/d' /cesta/k/souboru
<===> odstraní všechny komentáře v souboru (začínají znakem #) a zároveň odstraní prázdné řádky
sed -i 's/\r//g' example
<===> !!pozor prepise puvodni data!! - nahradi WINDOWSI konce radku na UNIX konce radku // convert Windows end of line in Unix end of line (CR/LF to LF)
sed 's/:.*//' /etc/group
<===> Vypíše názvy skupin v systému.
echo /etc/fstab | sed -r 's:(.*)/(.*):adresář "\1", soubor "\2":'
<===> Rozparsuje z unixové cesty adresář a soubor.
sed -r 's/\S\s*$//'
<===> NUTNO OVERIT - asi smaze posledni mezeru na kazdme radku
sed -e 's/^/# /' example
<===> přidá před všechny rádky znak "#"
sed -n 's/ja/ty/p' soubor
<===> vypíše pouze řádek, kde byla provedena záměna
několik způsobů smazání prázdných řádků
sed '/^[[:space:]]*$/d'
<===> odstraní prázdné řádkysed '/^\s*$/d'
<===> odstraní prázdné řádkysed '/^$/d'
<===> odstraní prázdné řádkysed -n '/^\s*$/!p'
<===> odstraní prázdné řádky
Strana 141 z 183