Во-первых, source
и .
не работают, так как я использую разделитель другого типа, что-то вроде.
Я пробовал несколько способов, которые я могу гуглить, но пока что мне не повезло.
Мне удалось правильно распечатать все переменные и значения, но я не могу сохранить их как переменную в этом процессе bash.
Что я хочу:
В конце процесса bash, когда я "echo $ HUA_IP:"
он должен дать мне «192.168.0.1» согласно файлу config.cf.
Файл config.cf:
"HUA_PASSWORD": "admin",
"HUA_IP": "192.168.0.1"
Пока мой bash-файл:
#!/bin/bash
configFile="/opt/config.cf"
# config="`cat $configFile`"
# echo $config
# source $configFile
# echo $var1
# conf="";
while read var value
do
# export "$var"="$value"
var="${var%:*}"
var="${var//\"/}"
var="${var//[\}\{]/}"
value="${value//\"/}"
value="${value//,/}"
# echo "var :'"$var"'"
# echo "value :'"$value"'"
if [ !$var = "" ]
then
# "$var"="$value"
# eval $var=$value
export "$var"="$value"
fi
done < $configFile
echo $HUA_IP: