🐧 Как заменить переменную в файле с помощью sed?

by itisgood

Steam Editor, сокращенно sed, – это команда, используемая для поиска и замены любого текста в файле с помощью различных техник и синтаксиса.

В этом руководстве мы разберемся с концепциями sed и узнаем, как можно заменить переменную или ее значение в файле с помощью sed.

Синтаксис для замены строки

Для замены значения переменной с помощью sed нам сначала нужно понять, как работает sed и как мы можем заменить простую строку в любом файле с помощью sed.

Для замены любой строки синтаксис довольно прост и приведен ниже:

sed -i 's/old-string/new-string/g' file_name

В этом синтаксисе вам просто нужно указать строку, которую вы хотите заменить на старую, а затем новую строку через запятую.

После этого укажите файл, в котором вы хотите найти и заменить указанную строку.

Пример:

Предположим, у нас есть текстовый файл “file.txt”, в котором есть произвольный текст типа “Добро пожаловать на канал It is good”, и в этом файле мы хотим заменить слово канал на сайт с помощью команды sed.

cat file.txt

Добро пожаловать на канал It is good
Команда для изменения канала на сайт будет выглядеть следующим образом:
sed -i 's/канал/сайт/g' file.txt
После выполнения команды мы посмотрим на файл:
cat file.txt 

Добро пожаловать на сайт It is good

Строка была заменена с помощью команды sed.

Вот как можно найти и заменить любую строку в любом файле операционной системы Linux с помощью команды sed.

Теперь давайте узнаем, как заменить значение переменной в файле.

Замена переменной

Синтаксис для поиска и замены значения переменной в файле с помощью sed такой же, как и для поиска и замены строки в файле.

Единственная сложность заключается в написании регулярного выражения для поиска чего-либо в файле для замены этой части.

Итак, для изменения значения переменной синтаксис будет выглядеть следующим образом:

sed -i 's/var=.*/var=new_value/' file_name

Давайте рассмотрим пример, чтобы увидеть истинную реализацию и понять ее с большей ясностью.

Пример:

Предположим, у нас есть файл кода Python, в котором есть несколько переменных.

Этим переменным присвоены некоторые значения.


$ cat code.py
num1 = 1.5
num2 = 6.3

Теперь, чтобы заменить любую переменную, мы можем найти ее по имени и задать ей новое значение с помощью команды sed, приведенной ниже:

sed -i ‘s/num1 =.*/num1 =200/’ code.py

Заключение

В этом посте представлен простой и легкий способ найти и заменить переменную в любом файле с помощью sed.
Мы научились заменять строку в файле и заменять значение переменной с помощью sed.

You may also like

Leave a Comment