Jak wymienić zmienną w pliku za pomocą SED?

Jak wymienić zmienną w pliku za pomocą SED?

Edytor Steam, skrócony jako SED, jest poleceniem używanym do znalezienia i wymiany dowolnego tekstu w pliku za pomocą różnych technik i składni. W tym poście zrozumiemy pojęcia SED i dowiemy się, jak wymienić zmienną lub jej wartość w pliku za pomocą SED.

Składnia do zastąpienia ciągu

Aby wymienić wartość zmienną za pomocą SED, najpierw musimy zrozumieć, jak działa SED i jak możemy wymienić prosty ciąg w dowolnym pliku za pomocą SED.

Aby zastąpić dowolny ciąg, składnia jest dość prosta i podana poniżej:

$ sed -i 's/old-string/new-string/g' plik_name

W tej składni wystarczy podać ciąg, który chcesz wymienić w starym ciągu, a następnie nowy ciąg w odwróconym przecinku. Następnie podaj plik, w którym chcesz znaleźć i wymienić wspomniany ciąg.

Przykład:

Załóżmy, że mamy plik tekstowy „plik.txt ”, w którym mamy losowy tekst, taki jak„ Witamy w kanale Linuxhint ”, aw tym pliku chcemy zastąpić kanał Word na stronie internetowej za pomocą polecenia SED.

plik $ cat.tekst

Polecenie do zmiany kanału na stronę internetową by się podobało:

$ sed -i 's/kanał/strona internetowa/g'.tekst

Po uruchomieniu polecenia spojrzymy na plik:

plik $ cat.tekst

Ciąg został zastąpiony za pomocą polecenia SED. Tak więc możesz znaleźć i wymienić dowolny ciąg w dowolnym pliku systemu operacyjnego Linux za pomocą polecenia SED.

Teraz nauczmy się zastąpić zmienną wartość w pliku.

Wymień zmienną

Składnia do znalezienia i wymiany wartości zmiennej w pliku za pomocą SED jest taka sama jak znalezienie i wymiana ciągu w pliku. Jedyną trudną częścią jest napisanie wyrażenia regularnego, aby znaleźć coś w pliku, aby zastąpić tę część. Tak więc, aby zmienić wartość zmiennej, składnia pójdzie w ten sposób:

$ sed -i 's/var =.*/var = new_value/'plik_name

Spójrzmy na przykład, aby zobaczyć prawdziwą implementację i zrozumieć go z większą jasnością.

Przykład:

Załóżmy, że mamy plik kodu Pythona, w którym mamy kilka zmiennych. Te zmienne mają przypisane do nich pewne wartości.

kod $ cat.py

Teraz, aby zastąpić dowolną zmienną, możemy ją wyszukać po swojej nazwie i podać nową wartość za pomocą polecenia SED podanego poniżej:

$ sed -i 's/num1 =.*/num1 = 200/'kod.py

Po wykonaniu powyższego polecenia SED ponownie wyświetlamy zawartość pliku:

kod $ cat.py

Widać, że wartość zmiennej „NUM1” została zastąpiona zgodnie z naszym wymogiem.

Za pomocą tej prostej sztuczki możesz zastąpić dowolną zmienną lub jej wartość w dowolnym pliku za pomocą SED.

Wniosek

Ten post zapewnia prosty i łatwy sposób znalezienia i wymiany zmiennej w dowolnym pliku za pomocą SED. Nauczyliśmy się wymieniać ciąg w pliku i zastępować wartość zmiennej za pomocą SED.