]> git.donarmstrong.com Git - bin.git/blob - upload_ics
add reset usb bus command
[bin.git] / upload_ics
1 #!/bin/bash
2
3 set -e
4
5 . ~/.cadaver_cals
6
7 tempdir=$(mktemp -d)
8 tempdir=$(readlink -f "$tempdir")
9 trap "/bin/rm -f \"$tempdir\"/*.ics; rmdir \"$tempdir\"" QUIT INT EXIT
10
11 for file in "$@"; do
12     bevents=($(grep -hn BEGIN:VEVENT "$file" | awk -F: '{print $1}'))
13     eevents=($(grep -hn END:VEVENT "$file" | awk -F: '{print $1}'))
14
15     ehead=${bevents[0]}
16     let "ehead -= 1"
17
18     bfoot=$(wc -l "$file")
19     let "bfoot -= ${eevents[-1]}"
20
21     for (( i=0; i < ${#bevents[@]}; i++)); do
22         head -n $ehead "$file" > "$file-$i.ics";
23         sed -n ${bevents[$i]},${eevents[$i]}p "$file" >> "$file-$i.ics";
24         tail -n $bfoot "$file" >> "$file-$i.ics";
25     done
26 done
27
28 (cd "$tempdir";
29 cadaver $CADAVER_CAL << EOC
30   mput *.ics
31   exit
32 EOC
33 rm *.ics;
34 )
35 rmdir $tempdir;
36 trap - QUIT INT EXIT
37
38