maketledata.sh 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. #!/bin/bash
  2. TLE=predict.tle
  3. echo "const struct SatData satdata[] = {"
  4. SATFILTER="XW-2A\|XW-2B\|XW-2D\|XW-2F\|CAS-4A\|CAS-4B"
  5. declare -A UPLINKS=( [XW-2A]=435.033f [XW-2B]=435.093f
  6. [XW-2D]=435.213f [XW-2F]=435.323f
  7. [CAS-4A]=435.213f [CAS-4B]=435.273f )
  8. ( cat $TLE |tr -d '\r' | while read a
  9. do
  10. name=`echo $a|sed -e 's/^/"/' -e 's/ //g' -e 's/$/"/g'`
  11. echo -n "{" $name ","
  12. read b
  13. declare -a ST=(1 1 3 8 10 12 15 19 21 34 45 54 63 65 69)
  14. declare -a EN=(1 1 7 8 11 14 17 20 32 43 52 61 63 68 69)
  15. for i in 7 8 9
  16. do
  17. start=${ST[i]}
  18. end=${EN[i]}
  19. el=`echo "$b"|cut -b ${start}-${end}`
  20. echo -n $el ", "
  21. done
  22. read c
  23. # replace char 26 with "." so extracted value looks like a float
  24. d=${c::25}"."${c:26}
  25. declare -a ST=(1 1 3 9 18 26 35 44 53 64 69)
  26. declare -a EN=(1 1 7 16 25 33 42 51 63 68 69)
  27. for i in 3 4 5 6 7 8 9
  28. do
  29. start=${ST[i]}
  30. end=${EN[i]}
  31. el=`echo "$d"|cut -b ${start}-${end}`
  32. echo -n $el ","
  33. done
  34. echo -n ${UPLINKS[$a]}","
  35. echo
  36. done
  37. ) | sed -e 's/ ,/,/g' -e 's/, /,/g' -e 's/,$/ },/' -e 's/,/, /g' \
  38. | sed -e 's/ 0/ /g' -e 's/ 0/ /g' -e 's/ 0/ /g' -e 's/ 0/ /g' \
  39. | grep -e $SATFILTER
  40. echo "};"