Linux: zamień ciąg tekstowy w pliku [Przewodnik]

Linux: zamień ciąg tekstowy w pliku [Przewodnik]

Ręczna edycja plików tekstowych w systemie Linux może być żmudna. Dlatego dobrze jest wiedzieć, jak szybko zastąpić ciągi tekstowe w plikach za pomocą wiersza poleceń. Jeśli jesteś nowy w Linuksie i nie wiesz, jak to zrobić, możemy pomóc! Śledź dalej, ponieważ pokazujemy, jak zastąpić ciąg tekstowy w pliku w systemie Linux!

Linux: zamień ciąg tekstowy w pliku [Przewodnik]

Zastąp ciąg tekstowy w pliku – sed

Narzędzie sed to najlepszy sposób na zastąpienie ciągu tekstowego w pliku w systemie Linux. Powód? Jest prosty w użyciu i bardzo dobrze wykonuje swoją pracę. Sed jest zwykle preinstalowany w 99% systemów operacyjnych Linux, więc nie trzeba go instalować, aby z niego korzystać.

Zastąpienie ciągu tekstowego w pliku poleceniem Sed odbywa się za pomocą polecenia sed -i  . Oto jak z niego korzystać. Najpierw otwórz okno terminala na pulpicie systemu Linux. Możesz otworzyć okno terminala, naciskając  Ctrl + Alt + T na klawiaturze.

Gdy okno terminala jest otwarte i gotowe do użycia, wpisz sed -i  w wierszu zachęty terminala. To jest początek polecenia zamiany.

sed-i

Po napisaniu  polecenia sed -i  dodaj znak cudzysłowu. Ten cudzysłów jest niezbędny, ponieważ cały tekst zastępowany przez sed -i  musi zaczynać się po tym znaku.

sed-i '

Po pierwszym  znaku ' napisz s/S /  idzie bezpośrednio przed istniejącego tekstu, który chcesz zastąpić używając  sed .

sed-i's/

Teraz, gdy  s/  jest wpisane w wierszu poleceń terminala, nadszedł czas, aby powiedzieć sedowi, jaki tekst ma zastąpić w pliku. W tym przykładzie zastąpimy słowo „jabłko”. 

sed-i's/jabłko

Kiedy tekst, który chcemy zastąpić, zostanie wpisany do polecenia, następnym krokiem jest wpisanie nowego tekstu, który go zastąpi. W tym przykładzie zastąpimy słowo „jabłka” słowem „pomarańcze”.

sed -i's/jabłka/pomarańcze

Gdy tekst, który chcemy zastąpić, zostanie zapisany w poleceniu (pomarańcze), zamknij polecenie za pomocą g/ . G / nakazuje  sed do zastąpienia wszystkich wystąpień tekstowych (jabłka) z nowym tekstem (pomarańcze). Powinno to wyglądać jak na poniższym przykładzie.

Uwaga: jeśli nie chcesz zamieniać każdego tekstu w pliku (na przykład jabłek na pomarańcze), usuń g i uruchom go jako sed -i 's/apples/oranges/'zamiast.

sed -i 's/jabłko/pomarańcza/g'

Na koniec powiedz  sedowi, w  jakim pliku znajduje się tekst, który wymaga zastąpienia. W tym przykładzie docelowym plikiem jest plik fruit.txt w katalogu domowym.

Linux: zamień ciąg tekstowy w pliku [Przewodnik]

sed -i 's/jabłka/pomarańcze/g' ~/owoce.txt

Naciśnij  klawisz Enter,  aby wykonać polecenie i zastąpić ciąg tekstowy w pliku.

Zastąp ciąg tekstowy w pliku – Perl

Innym sposobem zastąpienia ciągu tekstowego w pliku w systemie Linux jest język programowania Perl. Perl jest często używany do przetwarzania tekstu, więc naturalnie może podmieniać ciągi tekstowe w plikach i jest idealny do tego przypadku użycia.

Aby rozpocząć, upewnij się, że masz zainstalowany Perl na swoim komputerze z systemem Linux. Większość systemów operacyjnych Linux ma zainstalowany Perl. Jeśli jednak go nie masz, sprawdź stronę pomocy swojego systemu operacyjnego, aby uzyskać informacje o tym, jak go uruchomić.

Używanie Perla do zastępowania ciągów tekstowych w pliku wymaga terminala. Otwórz terminal na pulpicie systemu Linux, naciskając  Ctrl + Alt + T  na klawiaturze. Lub wyszukaj „Terminal” w menu aplikacji i uruchom go w ten sposób.

Gdy okno terminala jest otwarte i gotowe do użycia, zacznij od wpisania  perl -pe  w wierszu poleceń. Polecenie  perl -pe  jest tym, co jest potrzebne do zastąpienia ciągu tekstowego w pliku.

perl-pe

Po wypisaniu  perl -pe  w wierszu zachęty terminala będziesz musiał zacząć od pierwszego  znaku cudzysłowu . Ten znak mówi Perlowi, gdzie w poleceniu znajduje się obszar zastępowania tekstu.

perl -pe '

Po pierwszym  cudzysłowu, dodać  s / , po którym następuje ciąg tekstu, który chcesz zastąpić, a drugi / . Na przykład, aby zastąpić słowo „jabłka” w pliku fruit.txt, należy napisać następujący tekst.

perl -pe's/jabłka/

Po wpisaniu słów, które chcesz zastąpić, dodaj słowo, które zastąpi istniejący tekst. Na przykład, jeśli chcesz zastąpić „jabłka” w „owocu.txt” słowem „pomarańcze”, dodaj „pomarańcze”, perl -pe 's/apples/aby wyglądało to tak perl -pe 's/apples/oranges/.

perl -pe 's/jabłka/pomarańcze/

Gdy oba ciągi tekstu są w poleceniu, musisz określić plik wejściowy, którego używa Perl. Na przykład, jeśli chcesz zastąpić tekst w pliku „fruit.txt”, musisz podać go w poleceniu.

Uwaga: w tym przykładzie plik „fruit.txt” znajduje się w katalogu domowym (~/). Pamiętaj, aby zastąpić „~/owoc.txt” lokalizacją pliku tekstowego, aby polecenie zadziałało.

perl -pe 's/jabłka/pomarańcze/' ~/owoce.txt

Teraz, gdy plik wejściowy (plik, który modyfikujesz za pomocą Perla) został dodany do polecenia, polecenie powinno wyglądać tak, jak poniżej.

Linux: zamień ciąg tekstowy w pliku [Przewodnik]

perl -pe 's/jabłka/pomarańcze/' ~/fruit.txt > /tmp/output.txt;cat /tmp/output.txt > ~/fruit.txt

Po uruchomieniu powyższego polecenia ciąg tekstowy zostanie zastąpiony nowym określonym tekstem. W naszym przykładzie zastąpiliśmy „jabłka” „pomarańczami”. Aby zobaczyć zmiany, wpisz poniższe polecenie.

kot owoc.txt


Ulepsz schowek Gnome Shell za pomocą Pano

Ulepsz schowek Gnome Shell za pomocą Pano

Spójrzmy prawdzie w oczy, domyślny schowek Gnome Shell nie jest zbyt dobry. Zainstaluj Pano, aby ulepszyć korzystanie ze schowka!

Jak zainstalować DaVinci Resolve 17 w systemie Linux

Jak zainstalować DaVinci Resolve 17 w systemie Linux

Czy potrzebujesz świetnego nieliniowego edytora wideo dla swojego systemu Linux? Spraw, aby Davinci Resolve 17 działał z tym przewodnikiem!

Jak pobrać tapety na pulpit systemu Linux za pomocą programu do pobierania tapet

Jak pobrać tapety na pulpit systemu Linux za pomocą programu do pobierania tapet

Wallpaper Downloader to zręczny program do pobierania i zarządzania tapetami dla systemu Linux. Obsługuje większość środowisk graficznych Linux i jest bardzo łatwy w użyciu. Ten przewodnik

Jak zainstalować Tuxedo OS na swoim komputerze

Jak zainstalować Tuxedo OS na swoim komputerze

Chcesz przetestować Tuxedo OS na komputerach Tuxedo? Dowiedz się, jak zainstalować najnowszą wersję Tuxedo OS na swoim komputerze.

Jak zainstalować plik DEB w systemie Linux

Jak zainstalować plik DEB w systemie Linux

Czym jest plik DEB? Co ty z tym robisz? Poznaj wiele sposobów instalowania plików DEB na komputerze z systemem Linux.

Jak grać w Dying Light w systemie Linux

Jak grać w Dying Light w systemie Linux

Dying Light to gra wideo typu survival horror z 2015 roku opracowana przez Techland i wydana przez Warner Bros Interactive Entertainment. Gra koncentruje się na

Jak zainstalować Neptune Linux na swoim komputerze

Jak zainstalować Neptune Linux na swoim komputerze

Neptune używa środowiska graficznego KDE Plasma 5 i ma na celu dostarczenie eleganckiego systemu operacyjnego. Oto jak zainstalować Neptune Linux na swoim komputerze.

Wypróbuj nowy pulpit Ubuntu oparty na przystawkach

Wypróbuj nowy pulpit Ubuntu oparty na przystawkach

Chcesz wypróbować nowy system operacyjny Ubuntu oparty na pakietach Snap? Dowiedz się, jak wdrożyć go na maszynie wirtualnej, korzystając z tego przewodnika.

Jak grać w Undertale w systemie Linux

Jak grać w Undertale w systemie Linux

Undertale to niezależna gra RPG z 2015 roku, opracowana i opublikowana przez twórcę gier Toby'ego Foxa. Ten przewodnik obejmie pobieranie i instalowanie Undertale na twoim komputerze

Jak grać w Total War: THREE KINGDOMS w systemie Linux

Jak grać w Total War: THREE KINGDOMS w systemie Linux

Total War: Three Kingdoms to turowa gra strategiczna RTS opracowana przez Creative Assembly. Oto jak grać w systemie Linux.