Я пишу сценарий bash, который выполняет различные действия, но при запуске он проверяет, существует ли cra sh, и поэтому пытается загрузить его переменные из файла журнала.
Файл журнала имеет следующий формат:
1stline: var1:var2:var3:var4:var5 # : is a delimeter
2ndline: number # [0-9]
3rdline: var6:var7:var8 # : is a delimeter
Итак, как вы можете сказать, у меня есть 9 переменных, которые я буду sh загружать из этого файла, если был файл cra sh.
Я пытаюсь написать код для bash, чтобы сделать это, но я застреваю.
Например, моя идея состоит в том, чтобы создать массив и добавить каждую переменную, которая читается из файла журнала. Но у меня проблемы с написанием этого кода.
if [ -s ${crashfile} ] # file exists => crash has occured
then
declare -a loadvars
while IFS= read -r line
# What do I do in here ?
done < ${crashfile}
else # file doesn't exist => cold start
# bla
# bla
# bla
fi
Проблема сосредоточена внутри первого, пока l oop. Имеется в виду, что я думаю, что мне нужно создать еще один, в то время как l oop, чтобы соответствующим образом маркировать строку? Но опять же, во второй строке есть только число без разделителя, так что с этим следует обращаться осторожно?
Я могу сделать это с помощью python / C как угодно, но смысл в том, чтобы сделать это с bash .
Заранее спасибо.