Я читаю файл со строками вроде:
folder=abc
name=xyz
Для некоторых строк я бы хотел установить переменную, например, name=xyz
, соответствующую строке, которую я прочитал.
Вырубая, с name=xyz
и folder=abc
, я попробовал:
while read -r line; do
$line
echo $name
done < /etc/testfile.conf
Это выдает сообщение об ошибке ./test: line 4: folder=abc: command not found
и т. Д.
Я пробовал "$line"
и $($line)
, и это то же самое. Можно ли делать то, что я хочу?
Мне удалось:
while read -r line; do
if [[ "$line" == 'folder'* ]]; then
folder="$(echo "$line" | cut -d'=' -f 2)"
fi
if [[ "$line" == 'name'* ]]; then
name="$(echo "$line" | cut -d'=' -f 2)"
fi
done < /etc/testfile.conf
но это кажется грязным