-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathparse_totals_by_expenditures_pdfs.sh
executable file
·41 lines (37 loc) · 2.01 KB
/
parse_totals_by_expenditures_pdfs.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#!/bin/bash
Y=$1
types="recurrent nonrecurrent operating plant_equipment_works subventions capital expenditure"
if [ $Y ]
then
echo -n "head_no,head_name"
let y1=$Y-1
let y2=$Y-2
for t in $types
do
echo -n ",actual_${t}_${y2},approved_${t}_${y1},revised_${t}_${y1},estimate_${t}_${Y}"
done
echo ""
fi
for i in `find www.budget.gov.hk/${Y} -name head*.txt | sort -n`
do
HEAD=`grep "Head" $i | head -1`
HEAD_NB=`echo $HEAD | grep -oE "[0-9]+" | head -1`
HEAD_NAME=`echo $HEAD | sed 's/Head //' | cut -d" " -f3- | sed 's/^\b//'`
TOTALS=`grep -E "Total, " $i`
RECURRENT=`echo "$TOTALS" | grep ", Recurrent" | sed 's/[,.#]//g' | sed 's/^[a-Z, -]\+//' | sed 's/ \+/,/g'`
NONRECURRENT=`echo "$TOTALS" | grep ", Non-Recurrent" | sed 's/[,.#]//g' | sed 's/^[a-Z, -]\+//' | sed 's/ \+/,/g'`
OPERATING=`echo "$TOTALS" | grep ", Operating Account" | sed 's/[,.#]//g' | sed 's/^[a-Z, -]\+//' | sed 's/ \+/,/g'`
PLANT=`echo "$TOTALS" | grep ", Plant, Equipment and Works" | sed 's/[,.#]//g' | sed 's/^[a-Z, -]\+//' | sed 's/ \+/,/g'`
SUBS=`echo "$TOTALS" | grep ", Subventions" | sed 's/[,.#]//g' | sed 's/^[a-Z, -]\+//' | sed 's/ \+/,/g'`
CAPITAL=`echo "$TOTALS" | grep ", Capital Account" | sed 's/[,.#]//g' | sed 's/^[a-Z, -]\+//' | sed 's/ \+/,/g'`
EXPENDITURES=`echo "$TOTALS" | grep ", Expenditure" | sed 's/[,.#]//g' | sed 's/^[a-Z, -]\+//' | sed 's/ \+/,/g'`
echo -n $HEAD_NB,\"$HEAD_NAME\"
if [ "${RECURRENT}" ]; then echo -n ",${RECURRENT}"; else echo -n ",,,,"; fi;
if [ "${NONRECURRENT}" ]; then echo -n ",${NONRECURRENT}"; else echo -n ",,,,"; fi;
if [ "${OPERATING}" ]; then echo -n ",${OPERATING}"; else echo -n ",,,,"; fi;
if [ "${PLANT}" ]; then echo -n ",${PLANT}"; else echo -n ",,,,"; fi;
if [ "${SUBS}" ]; then echo -n ",${SUBS}"; else echo -n ",,,,"; fi;
if [ "${CAPITAL}" ]; then echo -n ",${CAPITAL}"; else echo -n ",,,,"; fi;
if [ "${EXPENDITURES}" ]; then echo -n ",${EXPENDITURES}"; else echo -n ",,,,"; fi;
echo ""
done