Как заменить строку текста на вход из другого файла

Я работаю над скриптом для настройки сервера. В основном сценарий устанавливает несколько сервисов и копирует файлы конфигурации в место.

Я хотел бы заменить имя пользователя в одном из файлов конфигурации содержимым другого файла. Входной файл представляет собой одну строку текста, которая содержит имя пользователя. Файл конфигурации имеет несколько строк текста, но только одна строка относится к имени пользователя.

Как заменить имя пользователя конфигурационного файла на имя пользователя, сохраненное во входном файле?

1
задан 27 October 2014 в 13:54

1 ответ

Вы можете сохранить имя пользователя в переменной и использовать sed для изменения конфигурационного файла:

#! /bin/bash
username=$(< /path/to/username)
sed -i~ -e "s/username=XXX/username=$username/"

Конфигурационный файл в этом примере должен содержать строку username=XXX. Имя пользователя не должно содержать / (некоторые другие не буквенно-цифровые символы также могут быть проблематичными).

(Untested.)

0
ответ дан 24 May 2018 в 02:26

Другие вопросы по тегам:

Похожие вопросы: