Wyszukiwanie i zamiana tekstu

Bash:
Wyszukiwanie i zamiana tekstu

Jak to zrobić:

# Wyszukaj i zamień tekst w pliku za pomocą sed
sed -i 's/szukany_tekst/nowy_tekst/g' plik.txt

# Przykład zamiany 'kot' na 'pies' w pliku 'zwierzeta.txt'
sed -i 's/kot/pies/g' zwierzeta.txt

# Wypisz wynik zamiany na ekranie
sed 's/kot/pies/g' zwierzeta.txt

Output:

Jeden pies, dwa psy, trzy psy.

A na głębszą wodę:

Polecenie sed (stream editor) to klasyk w UNIX-owych systemach, używany od lat ‘70. Alternatywami dla sed mogą być awk, perl, czy nowoczesne skrypty w Pythonie, których wybór zależy od złożoności zadania i preferencji programisty. Ważne jest, że sed działa na strumieniach, przez co jest szybki i sprawnie przetwarza nawet duże pliki.

Flaga -i w sed oznacza zapisanie zmian bezpośrednio w pliku. g na końcu wzorca zamiany mówi o globalnej zamianie – bez niej sed zmieni tylko pierwsze wystąpienie w linii.

Zobacz także: