|
| 1 | +#!/bin/bash - |
| 2 | + |
| 3 | +# strict error handling |
| 4 | +set -o pipefail # trace ERR through pipes |
| 5 | +set -o errtrace # trace ERR through 'time command' and other functions |
| 6 | +set -o nounset # set -u : exit the script if you try to use an uninitialized variable |
| 7 | +set -o errexit # set -e : exit the script if any statement returns a non-true return value |
| 8 | + |
| 9 | +echo "$(date +'%0Y-%0m-%0d %0R:%0S'): Welcome to the download script." |
| 10 | + |
| 11 | +curDir="$(pwd)" |
| 12 | +echo "$(date +'%0Y-%0m-%0d %0R:%0S'): The current directory is '$curDir'." |
| 13 | + |
| 14 | +scriptDir="$(realpath "$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )/bookbase/scripts")" |
| 15 | +echo "$(date +'%0Y-%0m-%0d %0R:%0S'): The script directory is '$scriptDir'." |
| 16 | + |
| 17 | +downloadScript="$(realpath "$scriptDir/download.sh")" |
| 18 | +echo "$(date +'%0Y-%0m-%0d %0R:%0S'): The download script directory is 'downloadScript'." |
| 19 | + |
| 20 | +downloadDir="programmingWithPython_$(date +"%Y%m%d")" |
| 21 | +echo "$(date +'%0Y-%0m-%0d %0R:%0S'): We will use the download directory 'downloadDir'." |
| 22 | +mkdir -p "$downloadDir" |
| 23 | +cd "$downloadDir" |
| 24 | + |
| 25 | + |
| 26 | + |
| 27 | +mkdir "original" |
| 28 | +mkdir "filtered" |
| 29 | + |
| 30 | + |
| 31 | +download () { |
| 32 | + url="https://thomasweise.github.io/$1/$2" |
| 33 | + echo "Now downloading '$url'." |
| 34 | + download.sh "$url" |
| 35 | + cp "$2" "original/" |
| 36 | + echo "Finished downloading '$url', now canonicalizing." |
| 37 | + filterPdfExact.sh "$2" |
| 38 | + mv "$2" "filtered/" |
| 39 | + rm "${2%%.*}.original.pdf" |
| 40 | + echo "Finished." |
| 41 | +} |
| 42 | + |
| 43 | + |
| 44 | +download "programmingWithPython" "programmingWithPython.pdf" |
| 45 | + |
| 46 | +download "programmingWithPythonSlidesDE" "01_organisation.pdf" |
| 47 | + |
| 48 | +download "programmingWithPythonSlidesDE" "02_einleitung.pdf" |
| 49 | + |
| 50 | +download "programmingWithPythonSlidesDE" "03_python_installieren.pdf" |
| 51 | + |
| 52 | +download "programmingWithPythonSlidesDE" "04_pycharm_installieren.pdf" |
| 53 | + |
| 54 | +download "programmingWithPythonSlidesDE" "05_programme_erstellen_und_ausführen.pdf" |
| 55 | + |
| 56 | +download "programmingWithPythonSlidesDE" "06_beispiele_herunterladen.pdf" |
| 57 | + |
| 58 | +download "programmingWithPythonSlidesDE" "07_int.pdf" |
| 59 | + |
| 60 | +download "programmingWithPythonSlidesDE" "08_float.pdf" |
| 61 | + |
| 62 | +download "programmingWithPythonSlidesDE" "09_dokumentation.pdf" |
| 63 | + |
| 64 | +download "programmingWithPythonSlidesDE" "10_bool.pdf" |
| 65 | + |
| 66 | +download "programmingWithPythonSlidesDE" "11_str.pdf" |
| 67 | + |
| 68 | +download "programmingWithPythonSlidesDE" "12_none.pdf" |
| 69 | + |
| 70 | +download "programmingWithPythonSlidesDE" "13_variablen_wertzuweisung.pdf" |
| 71 | + |
| 72 | +download "programmingWithPythonSlidesDE" "14_fehler_im_kode_mit_exceptions_und_ide_finden.pdf" |
| 73 | + |
| 74 | +download "programmingWithPythonSlidesDE" "15_variablen_typen_und_type_hints.pdf" |
| 75 | + |
| 76 | +download "programmingWithPythonSlidesDE" "16_gleichheit_und_identität.pdf" |
| 77 | + |
| 78 | +download "programmingWithPythonSlidesDE" "17_listen.pdf" |
| 79 | + |
| 80 | +download "programmingWithPythonSlidesDE" "18_ruff.pdf" |
| 81 | + |
| 82 | +download "programmingWithPythonSlidesDE" "19_tupel.pdf" |
| 83 | + |
| 84 | +download "programmingWithPythonSlidesDE" "20_mengen.pdf" |
| 85 | + |
| 86 | +download "programmingWithPythonSlidesDE" "21_dictionaries.pdf" |
| 87 | + |
| 88 | +download "programmingWithPythonSlidesDE" "22_alternativen_mit_if.pdf" |
| 89 | + |
| 90 | +download "programmingWithPythonSlidesDE" "23_schleifen_mit_for.pdf" |
| 91 | + |
| 92 | +download "programmingWithPythonSlidesDE" "24_enumerate_und_pylint.pdf" |
| 93 | + |
| 94 | +download "programmingWithPythonSlidesDE" "25_schleifen_mit_while.pdf" |
| 95 | + |
| 96 | +download "programmingWithPythonSlidesDE" "26_funktionen_definieren_und_aufrufen.pdf" |
| 97 | + |
| 98 | +download "programmingWithPythonSlidesDE" "27_funktionen_in_modulen.pdf" |
| 99 | + |
| 100 | +download "programmingWithPythonSlidesDE" "28_unit_tests.pdf" |
| 101 | + |
| 102 | +download "programmingWithPythonSlidesDE" "29_funktionsargumente.pdf" |
| 103 | + |
| 104 | +cd "$curDir" |
| 105 | +xzCompress.sh "$downloadDir" |
| 106 | + |
| 107 | +echo "$(date +'%0Y-%0m-%0d %0R:%0S'): Done with the download script." |
0 commit comments