Good to Know Database

Shell Skript: Download German Dilbert Comic Strip


Das folgende Shell Skript lädt den aktuellen deutschen Dilbert Comic Strip von der VDI-Nachrichten Homepage herunter.

Erstellen Sie durch den folgenden Befehl das Skript im Verzeichnis ~/sh.

[root@centos6 ~]# vi ~/sh/get_comic_dilbert_de.sh

Fügen Sie jetzt das folgende Skript in die Datei get_comic_dilbert_de.sh ein.

###########################################################################
##                                                                       ##
##                  Download German Dilbert Comic Strip                  ##
##                                                                       ##
## Creation:    15.07.2012                                               ##
## Last Update: 20.10.2013                                               ##
##                                                                       ##
## Copyright (c) 2012-2013 by Georg Kainzbauer <http://www.gtkdb.de>     ##
##                                                                       ##
## This program is free software; you can redistribute it and/or modify  ##
## it under the terms of the GNU General Public License as published by  ##
## the Free Software Foundation; either version 2 of the License, or     ##
## (at your option) any later version.                                   ##
##                                                                       ##
###########################################################################
#!/bin/bash

# Local directory to store the comic strip
DIR=/var/www/html/comics/Dilbert_DE/

# Who will be informed in case of new comic strip is available
MAIL="georg@home.lan regina@home.lan"

# Mail subject
SUBJECT="Neuer Dilbert Comic Strip"

# Web server URL to download the comic strip
URL=http://www.ingenieur.de

# Directory of the comic strip on the web server
WEBDIR=/var/storage/images/vdi-verlag/ingenieurde/spiel-spass/dilbert/comics/

# Path of the comic strip on the web server
PATH=$(/usr/bin/wget -q ${URL}/Spiel-Spass/Dilbert -O - 2>/dev/null | /bin/grep -i "${WEBDIR}" | /usr/bin/head -n1 | /bin/cut -d\' -f2)

# File name of the comic strip on the web server
FILE=$(/bin/echo ${PATH} | /bin/cut -d/ -f12)

###################################################################
# NORMALLY THERE IS NO NEED TO CHANGE ANYTHING BELOW THIS COMMENT #
###################################################################

function log()
  {
    /bin/echo "LOG:" $1
  }

function error()
  {
    /bin/echo "ERROR:" $1
    exit 1
  }

# Check variables
if [ -z "${DIR}"  ] ; then
  error "Please specify the local comic strip directory."
fi

if [ -z "${URL}" ] ; then
  error "Please specify the web server URL."
fi

if [ -z "${WEBDIR}" ] ; then
  error "Please specify the directory on the web server."
fi

if [ -z "${PATH}" ] ; then
  error "Please specify the path on the web server."
fi

if [ -z "${FILE}" ] ; then
  error "Please specify the file name on the web server."
fi

# Create local comic strip directory if it does not exist
if [ ! -d ${DIR} ] ; then
  log "Creating local comic strip directory ${DIR}."
  /bin/mkdir -p ${DIR}
fi

# Check for new comic strip
if [ -f "${DIR}${FILE}" ] ; then
  log "No new comic strip found on the web server."
  exit 0
else
  log "Downloading new comic strip from the web server."
  /usr/bin/wget -q "${URL}${PATH}" -P ${DIR}

  if [ -f "${DIR}${FILE}" ] ; then
    log "Download successful."
    if [ -n "${MAIL}" ] ; then
      log "Sending new comic strip to the mailing list."
      /usr/bin/mutt -s "${SUBJECT}" -a "${DIR}${FILE}" -- ${MAIL} < /dev/null;
    fi
  else
    error "Download failed."
  fi
fi

exit 0

Ändern Sie anschließend die Zugriffsrechte der Datei.

[root@centos6 ~]# chmod 0700 ~/sh/get_comic_dilbert_de.sh

Öffnen Sie jetzt die Crontab mit dem folgenden Befehl zum Bearbeiten.

[root@centos6 ~]# crontab -e

Fügen Sie am Ende der Datei die folgende Zeile ein. Dadurch wird das Skript zu jeder vollen Stunde ausgeführt.

0 * * * * /root/sh/get_comic_dilbert_de.sh >/dev/null 2>&1


Dieser Eintrag wurde am 15.07.2012 erstellt und zuletzt am 05.04.2015 bearbeitet.

Direkter Link zu dieser Seite: http://www.gtkdb.de/index_33_1745.html

[ Zur Startseite ]   [ Zur Kategorie ]


Valid XHTML 1.0 Transitional Valid CSS Valid Atom 1.0

© 2004-2018 by Georg Kainzbauer