Я пытаюсь перебрать пронумерованные переменные, но мне трудно добавить индексный номер цикла к имени базовой переменной. Код следует, используя 2-итерационный пример:
#ENTER TOTAL NUMBER OF RUNS HERE:
nruns=2
# START DATE/TIME #END DATE/TIME
#***************** ***************
#RUN 1 #RUN 2 #RUN 1 #RUN2
yr1=2008; yr2=2008; eyr1=2008; eyr2=2008;
mo1=11; mo2=12; emo1=12; emo2=12;
day1=30; day2=1; eday1=2; eday2=3;
hr1=18; hr2=18; ehr1=00; ehr2=00;
min1=00; min2=00; emin1=00; emin2=00;
sec1=00; sec2=00; esec1=00; esec2=00;
Затем я пытаюсь пройтись по циклу так, чтобы я мог добавить номер прогона к имени базовой переменной, единственное, что осталось прежним (например, добавив 1,2,3..etc к yr и затем вызвав $ yr1 $ yr2 переменные $ yr3 ... и т.д., как определено выше)
for count in `seq 1 $nruns`
do
#start vars
#**********
ystart=$((yr$count))
mostart=$((mo$count))
daystart=$((day$count))
hrst=$((hr$count)) # but this removes my preceding 0 which I need. i.e,
# here I get 0 instead of 00
minst=$((min$count))
secst=$((sec$count))
# Similarly, for end time variables
#end vars
#**********
yend=$((eyr$count))
moend=$((emo$count))
dayend=$((eday$count))
hrend=$((ehr$count))
minend=$((emin$count))
secend=$((esec$count))
Сейчас я пытаюсь создать строки, которые я использую для замены в программный файл, но из-за вышеуказанных проблем я получаю следующее:
sd1=$ystart-$mostart-$daystart\_$hrst:$minst:$secst
#which gives me 2008-11-30_18:0:0 instead of 2008-11-30_18:00:00
ed1=$yend-$moend-$dayend\_$hrend:$minend:$secend
#which gives me 2008-12-2_0:0:0 instead of 2008-12-02_00:00:00
Будем очень благодарны любой помощи. Спасибо!