#!/bin/bash # generate namelist of collaborators from topic file original="./topics/topic-template.md" filename="./build/topic-template-build.md" baseurl='https://www.mat.tuhh.de' #make output copy cp $original $filename #replace working group for wg in {aa,cm,dm,nm,st} do fullname=`wget -qO- $baseurl/forschung/$wg | grep h1 | sed -e "s/<h1>\s*\(.*\)<\/h1>.*$/\1/g" | sed -e 's/^[ \t]*//'` sed -i "s;### Working Groups:\(.*\)$wg\(.*\);### Working Groups:\1\[$fullname\]($baseurl/forschung/$wg)\2;g" $filename done namelist=`grep -h -i -m 1 -r "###\s*Collaborators (MAT):" $filename | sed -e 's/^###\s*Collaborators (MAT):\s*//I' -e 's/\s*,\s*/\n/g' | sort -u` for name in $namelist do # pipeline to get full name of staff-member from mat-homepage # -> wget the staff homepage of $name # -> grep the line with the <h1>-tag, something like <h1>Fabian Gabel, M. Sc.</h1><div class='staffIntro'><p><img src='/home/fgabel/images/portrait.png' title='Foto von Fabian Gabel, M. Sc.' class='staffPicture'></p><div class='staffContact'> # -> strip the string such that only the portion between <h1></h1> remains # -> remove leading spaces fullname=`wget -qO- $baseurl/home/$name/?homepage_id=$name | grep h1 | sed -e "s/<h1>\s*\(.*\)<\/h1>.*$/\1/g" | sed -e 's/^[ \t]*//'` # dirty replacement to avoid dealing with errstr='Binary file (standard input) matches' if [ "$fullname" = "$errstr" ]; then fullname=`echo "$name $fullname" | \ sed -e "s;jgrossmann $errstr;Dr. Julian Großmann;g" \ -e "s;fbuenger $errstr;Dr. Florian Bünger;g" \ -e "s;hvoss $errstr;Prof. Dr. Heinrich Voß;g" \ -e "s;fboesch $errstr;Dipl. Ing. Frank Bösch;g" \ -e "s;sgoetschel $errst;Dr. Sebastian Götschel;g"` fi # replace name in .md file sed -i "s;$name;\[$fullname\]($baseurl/home/$name);g" $filename echo "# $fullname" > ./build/$name.md # append research to staffiles title="## `head -n 1 $filename | sed -e "s;#\s*;\[;g" -e "s;\(.*\);\1\]($filename);g"`" echo $title >> ./build/$name.md done