Changes

Jump to: navigation, search

T1042 CLI Script

1,449 bytes added, 21:10, 9 February 2019
 
#REDIRECT [[SICT AR Meeting Area CLI Script]]
 
== Script ==
 
This is a bash script to display the t1042 bookings for a given day:
#!/bin/bash
#
# Script to display bookings in T1042./DB1042
# Give a datespec on the command line, or no args for today.
#
# CTyler 2015-05-13, updated after wiki move 2016-08-05 # updated with -w argument (week) 2017-01-30
#
echo function show_day() { cat $TEMPFILE| egrep "</?td|</?tr"|tr -d "\012"| sed "s|</tr><tr>|</tr>\n<tr>|g"| sed -n "T1042 schedule for s|<tr><td>$(date +%Y-%m-%d -d "$*")\([0-2][0-9]:[0-5][0-9]-[0-2][0-9]:[0-5][0-9]\)</td><td>\([^<]\+\)</td>.*$| \1 \2|p"| sort } function check_day() { date -d "$*" >&/dev/null return $? } function usage() { exec >&2 echo "Invalid dateSpecification." echo "Usage:$(basename $0) [-w] dateSpecification" echo "Where: dateSpecification is valid date (e.g., 2038-01-01 or Next Tuesday)" echo " -w causes a full week to be output." exit 1 } if grep -qi t1042 <<<$0 then ROOMNAME="T1042" # traditional name else ROOMNAME="DB1042" # new name fi trap "rm \$TEMPFILE" SIGHUP SIGINT EXIT TEMPFILE=$(mktemp) curl https://wiki.cdot.senecacollege.ca/wiki/Meeting_Room_T1042 2>/dev/null >$TEMPFILE echo
curl httpif [ "$1" == "-w" ] then shift if check_day "$*" then echo "${ROOMNAME} schedule for the week of $(date -d "$*" +%Y-%m-%d)://zenit" for X in {0.senecac.on.ca/wiki/index.php/Meeting_Room_T1042 2>/dev/null|6} do echo date -d "$(( X - $(date +%w) )) day" +" egrep %A:"</?td|</?tr show_day "|tr $(date -d "\012$(date -d "$*") + $(( X - $(date +%w) )) day")"| done else usage exit 1 fi sed else if check_day "s|</tr><tr>|</tr>\n<tr>|g$*"| sed -n then echo "s|<tr><td>${ROOMNAME} schedule for $(date +%Y-%m-%d -d "$*") \([0-2][0-9]:[0-5][0-9]-[0-2][0-9]:[0-5][0-9]\)</td><td>\([^<]\+\)</td>.*" show_day "$| @" else usage exit 1 fi \1 \2|p"|fi sortecho  == Usage Examples ==
To use this script, run it with no arguments for the current day, or specify a day:
t1042 last tuesday
t1042 may 15
t1042 20162020-02-01 t1042 june 7, 20182025 You can also specify a <code>-w</code> argument to see a week at a time:  t1042 -w t1042 -w next week t1042 -w may 1
The data displayed is taken from the [[Meeting Room T1042]] page on this wiki, and the date and times must be formatted correctly (YYYY-MM-DD HH:MM-HH:MM) to display.
 
== Contribute ==
 
To contribute to development of this script, see the GitHub repository at https://github.com/Seneca-CDOT/t1042
<!-- THE CODE BELOW MAY PREVENT LINES FROM APPEARING IF THEY HAVE UNLINKED OR MISSING CONTACT DATA -- *FIXME*

Navigation menu