Чтение входных переменных и замена файла шаблона значениями переменных

Можно просто:

pgrep -a node

Это потенциально может обнаруживать ложные срабатывания, если у вас есть другой процесс с узлом в его имени.


Также обратите внимание, что это не сработает, если скрипт узла использует хеш-банг узла и был запущен без команды узла, хотя я думаю, что это также относится к сценариям Python.

-1
12.04.2021, 02:23
1 ответ

Пример выглядит как стандартное письмо, поэтому не ожидается, что в нем будут необычные символы. Команда sedподойдет, например.

#!/bin/bash
...
read -p "Enter Candidates Name : "  V_NAME
read -p "Enter Candidates start date : "  V_STARTDATE
sed "s=V_NAME=$V_NAME=g;s=V_STARTDATE=$V_STARTDATE=g"../template/hello > hello.$V_NAME
...

Это не работает, если имя кандидата или дата начала содержит знак =. Это предполагает, что шаблоны находятся в другом каталоге.

Другим подходом может быть использование hereдокумента и встраивание шаблона в скрипт

#!/bin/bash
...
read -p "Enter Candidates Name : "  V_NAME
read -p "Enter Candidates start date : "  V_STARTDATE
cat > hello.$V_NAME <<EOF
Hello $V_NAME
  Welcome $V_NAME to the team. I see you will be starting on $V_STARTDATE.
Thanks
EOF
...

и позвольте оболочке сделать замену.

0
28.04.2021, 22:53

Теги

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