(27. November 2003 — tk)

Update-Beschreibungen anzeigen

Um sich einen schnellen Überblick über die verschiedenen auf einem Helios-Server installierten Updates zu verschaffen, kann unser extract_update_descriptions.sh Skript benutzt werden.

Wird es ohne weitere Parameter aufgerufen, sucht es sich selbständig den Pfad zu den bereits installierten Helios-Updates. Übergibt man hingegen einen Pfad als Argument auf der Kommandozeile, werden die Unterverzeichnisse des Pfades nach Helios-Update-Beschreibungen durchsucht.

#!/bin/sh
#
# Script that extracts the Helios update descriptions based on the supplied 
# desc.txt files
#
# if running without arguments, it tries to look in /etc/updates
# otherwise it tries to find the descriptions in the folder(s) supplied as 
# command line argument
#
################################################################################
#
# version 0.0.3 (c) 2003 by Thomas Kaiser
#
################################################################################
#
# Non-Warranty:
# This script comes with absolutely no warranty.
#
# Use at your own risk!
#
################################################################################

Main()
{
    if [ $# -eq 0 ]; then
        read HELIOSDIR </etc/HELIOSInstallPath
        if [ -z "${HELIOSDIR}" ]; then
            echo "Path to Helios installation cannot be found. Exiting" >&2
            exit 1
        else
            echo "Available Updates on this machine (`hostname`)"
            echo " "
            ExtractDescriptions "${HELIOSDIR}/etc/updates"
        fi
    else
        while [ $# -gt 0 ]; do
            echo "Updates found in \"$1\""
            echo " "
            ExtractDescriptions "$1"
            shift
        done
    fi
}

ExtractDescriptions()
{
    find "$1/" -type d -name "u*" | while read folder; do
        echo "Update `basename "${folder}"`"
        echo "------------"
        echo " "
        StartInfo=`egrep -n "^Info" "${folder}/desc.txt" | cut -d: -f 1`
        StartInfoMinusOne=`expr ${StartInfo} - 1`
        sed 1,${StartInfoMinusOne}d "/desc.txt" | sed 's|^Info\:||g' | \
            grep -v "Before installing this update" | \
            grep -v "must be updated with one of the updates "
        echo " "
    done
}

Main "$@"

Ohne weitere Parameter aufgerufen gibt es Auskunft über die der aktiven Helios-Installation bekannten Updates. Ansonsten kann man auch einen Ordner mit den Updates als Pfad übergeben – dann wird der Inhalt der Unterordner untersucht.

Copyright © Thomas Kaiser, 2008 (erstellt 27. November 2003 — tk)

Dieser Beitrag kann durch jedermann gemäß den Bestimmungen der Lizenz für die freie Nutzung unveränderter Inhalte genutzt werden. Die Lizenzbedingungen können unter http://www.uvm.nrw.de/opencontent abgerufen oder bei der Geschäftsstelle des Kompetenznetzwerkes Universitätsverbund MultiMedia NRW, Universitätsstraße 11, D-58097 Hagen, schriftlich angefordert werden.