Shell Scripts, Zeit-Diebe und Who Is Who

Größe: px
Ab Seite anzeigen:

Download "Shell Scripts, Zeit-Diebe und Who Is Who"

Transkript

1 Betriebssysteme Shell Scripts 1 Praktikum Shell Shell Scripts, Zeit-Diebe und Who Is Who Sommersemester 2004 M. Thaler, März 2000/2002 Inhalt 1. Einführung Ziel Durchführung Praktikumsunterlagen Getting started Linux/Unix vs. Shell Befehle Philosophie der Shell Programmierung Debugging Literatur 3 2. Aufgaben Ein erstes Shell Script Variablen und Parameter Who is Who Zeit-Diebe Nomadic Computing Dateileichen 4

2 Betriebssysteme Shell Scripts 2 1. Einführung 1.1 Ziel Die Schnittstelle zwischen Benutzer und Linux/Unix bilden aus systemtechnischer Sicht die Systemfunktionen. Das Arbeiten mit einem Betriebssystem auf dieser Ebene wäre aber sehr ineffizient, deshalb stellt Linux/Unix, wie beinahe jedes andere Betriebssystem, einen Kommandointerpreter zur Verfügung, der Shell genannt wird. In modernen Betriebssystemen ist die Shell durch eine graphische Oberfläche ersetzt. Statt mit irgendwelchen, z.t. kryptischen Befehle Aktionen auszulösen, werden die Aktionen durch Anklicken eines graphischen Objektes ausgeführt. Beispielsweise führt das Anklicken des Ordners programme eigentlich ein Shell Kommando ähnlich wie cd programme aus. Die graphische Oberfläche ist intuitiver zu benutzen, allerdings sind die Möglichkeiten beschränkt, speziell dann, wenn Sie Folgen von Systembefehlen öfters ausführen müssen oder wenn die Befehle sehr komplex sind: hier findet die Shell Programmierung ihre Anwendung. Auch im Bereich der Systemadministration ist die Shellprogrammierung sehr nützlich: es lassen sich damit viele Aufgaben automatisieren. In diesem Praktikum möchten wir Sie in die Shell Programmierung unter Linux resp. Unix einführen. Selbstverständlich stellen auch andere Betriebssysteme Shells in irgendeiner Form zur Verfügung, die Unix-Shells sind aber traditionell sehr mächtige Werkzeuge und erreichen bis zu einem gewissen Grad die Funktionalität von Programmiersprachen. Wir können Sie natürlich nicht mit allen Aspekten vertraut machen, dazu fehlt uns schlichtweg die Zeit. Wir versuchen aber, Sie mit den Grundideen und Konzepten vertraut zu machen, sodass Sie sich schnell zurechtfinden. 1.2 Durchführung Das Praktikum können Sie alleine oder zu zweit durcharbeiten. Abgeben müssen Sie nichts, wir erwarten jedoch von Ihnen, dass Sie die Aufgabenstellungen vollständig lösen und in den Praktikumsstunden anwesend sind. Wir verzichten in diesem Praktikum auf einen Theorieteil, die Aufgaben sind nach dem Prinzip "learning by doing" aufgebaut. D.h. aber, dass Sie sich immer genau überlegen müssen, was Sie gerade machen. Aus diesem Grund ist es auch von Vorteil, wenn Sie die Aufgaben zu zweit durcharbeiten und miteinander die jeweiligen Resultate diskutieren. Machen Sie sich auch Notizen zu den Resultaten und halten Sie sich an die vorgegebene Reihenfolge der Aufgabenstellung (die Reihenfolge ist bewusst gewählt). Als Unterlagen steht Ihnen eine Kopie des Kapitels zur "bash" aus [1] zur Verfügung. Linux/Unix Befehle werden wir i.a. nicht weiter erklären, dazu stehen die Online Manuals zur Verfügung. Wir setzen voraus, dass Sie die grundlegende Bedienung einer Unix/Shell kennen, das wurde im Fach Informationssysteme behandelt. 1.3 Praktikumsunterlagen Die Dateien zu diesem Praktikum finden Sie in Shell.tar.gz. Packen Sie die Datei wie gewohnt aus: sie finden nun ein Verzeichnis Shell in dem sich mehrere Unterverzeichnisse befinden, einige davon sind leer. Sie werden in den jeweiligen Aufgabenstellungen aufgefordert ins entsprechende Verzeichnis zu wechseln. 1.4 Getting started Wir arbeiten in diesem Praktikum mit der bash-shell (bash: the bourne again shell). Bash ist normalerweise die default Shell unter Linux. Da Sie einige Befehle zuerst in einer Konsole austesten werden,

3 Betriebssysteme Shell Scripts 3 ist es notwendig sicher zu sein, dass Ihre default Shell die bash ist. Dies können Sie mit folgendem Befehl testen: echo $SHELL Die Ausgabe sollte bash sein. 1.5 Linux/Unix vs. Shell Befehle Wie Sie bereits gehört haben, gibt es unter Linux/Unix zwei Typen von Befehlen: a) Befehle, die als eigenständige Programme vom Betriebssystem zur Verfügung gestellt werden, z.b. ls und b) Befehle die von der Shell zur Verfügung gestellt werden (müssen) und auch von ihr ausgeführt werden, z.b. cd. Diese Unterscheidung ist auf den ersten Blick nicht offensichtlich, als Anwender geben Sie einfach Befehle ein. Es gibt aber unter Linux mehrere Shells, die sich in der Bedienung z.t. wesentlich unterscheiden (Siehe dazu [1]). Wir werden deshalb der Einfachheit halber nur eine Shell verwenden 1.6 Philosophie der Shell Programmierung Die Philosophie der Shell Programmierung ist eigentlich einfach: Sequenzen von existierenden Befehlen werden zu neuen Funktionen kombiniert. In Linux/Unix sind Shell Scripts Textdateien, die die einzelnen Befehle enthalten und von der Shell Befehl um Befehl interpretiert werden. Shell Scripts sind deshalb nicht sehr schnell, dies ist aber fast nie ein Problem. Für die Shell Programmierung ist es natürlich von Vorteil möglichst viele existierende Befehle zu kennen. Einen guten Überblick erhalten Sie, wenn Sie in z.b. [1] einmal alle Abschnitte mit Shell Befehlen durchlesen. Sie müssen dabei nicht jedes Detail verstehen, sondern sich nur einen ersten Überblick verschaffen. 1.7 Debugging Für das Debuggen von Shell Scripts unter Linux mit der bash stehen Ihnen zwei Möglichkeiten zur Verfügung: 1. echo Mit echo können Sie an beliebigen Stellen im Programm Variablen, Kommentare, etc. ausdrucken. Die Anwendung von echo finden Sie in den Aufgabenstellungen. 2. set -x Wenn Sie am Anfang eines Scriptes set -x einfügen, wird beim Abarbeiten des Scriptes jede Zeile auf den Bildschirm geschrieben. set +x schaltet dieses Feature wieder aus. 1.8 Literatur [1] Ellen Siever, ed. alt., Linux in a Nutshell, O'Reilly, 2. Auflage, 1999.

4 Betriebssysteme Shell Scripts 4 2. Aufgaben 2.1 Ein erstes Shell Script Alle Benutzer- und Shell Befehle, die Sie von Hand eingeben, können Sie auch in einer Text-Datei ablegen. Die Befehle werden dann der Reihe nach durch den Shell Kommandointerpreter ausgeführt. Die Datei mit den Befehlen wird Shell Script genannt und muss ausführbar sein. chmod +x foo macht die Datei foo ausführbar. Starten Sie ein Shell Terminal und wechseln Sie ins Verzeichnis shell/a1. Geben Sie folgende Befehle der Reihe nach ein: echo "Hello World!... I see" ls -al die entsprechenden Befehle werden ausgeführt. Als nächstes wollen wir ein Script erstellen mit Dateiname: MyFirstShellScript. Sie können entweder den Editor verwenden oder auch den Unix Befehl cat (cat foo gibt eigentlich die Datei foo auf den Bildschirm aus): cat > MyFirstShellScript #!/bin/bash # this line is a comment line echo "Hello World!... I see" ls -al CTRL-D Mit dem Befehl CTRL-D (End Of File) wir die Datei geschlossen. Wenn Sie mit ls Ihr Verzeichnis anschauen, sehen Sie die Datei MyFirstShellScript. Mit dem Befehl cat MFirstShell- Script können Sie den Inhalt der Datei betrachten. Nun haben Sie ihr erstes Shell Script geschrieben. Noch einige Erklärungen: alles hinter dem "Gartenhaag" # wird als Kommentar interpretiert, ausser der ersten Zeile: hier definieren Sie, welche Shell benutzt werden soll. Das ist vor allem dann wichtig, wenn die Arbeitsshell und die Shell, die Sie im Script verwenden wollen, verschieden sind. Starten Sie das Script indem Sie einfach MyFirstShellScript eingeben. OOPs es geht nicht... Wir haben vergessen, die Datei ausführbar zu machen: chmod +x MyFirstShellScript So nun sollte es klappen. Übrigens, Änderungen an der Datei MyFirstShellScript müssen Sie natürlich mit dem Editor machen. 2.2 Variablen und Parameter Scripts sind selbstverständlich nur interessant, wenn wir Parameter übergeben und mit Variablen arbeiten können. Den "Inhalt" von Parametern und Variablen erhält man durch Voranstellen eines $- Zeichens. Wechseln Sie in Verzeichnis shell/a2 und geben Sie folgende Zeilen im Shell Terminal ein (keine blanks vor und nach dem "="): Var1="Hallo World" Var2="... here I am" echo Var1 Var2 echo $Var1 $Var2 Überlegen Sie sich zuerst was bei folgender Befehlsfolge herauskommt, dann probieren Sie es aus:

5 Betriebssysteme Shell Scripts 5 Var3=$Var1 Var3="$Var3 Var3" echo $Var3 Nachdem wir nun die Mechanismen um Variablen kennengelernt haben, machen wir uns an die Parameter. Erstellen Sie dazu eine Script Datei mit Namen parameter und folgendem Inhalt: echo "mein Parameter ist: $1" Starten Sie parameter mit irgend einem Wert, z.b.: dann und dann parameter Steinbock parameter "Steinbock mit Aszendent Venus" parameter Steinbock mit Aszendent Venus Da fehlt aber Einiges,... was ist falsch? Nichts, nur die einzelnen Parameter werden eigentlich den Variablen $1 bis $9 zugewiesen, $0 enthält den Namen der Script Datei und über $# erhalten Sie die Anzahl Argumente. Ändern Sie parameter wie folgt: echo "ich heisse $0" echo "meine $# Parameter sind: " echo $1 echo $2 echo $3 $4 und starten Sie erneut: parameter Steinbock mit Aszendent Venus Nun, 9 Parameter sind nicht unbedingt die Welt. Selbstverständlich können Sie mehr als 9 Parameter übergeben, allerdings können Sie nicht direkt mit $n (n > 9) zugreifen. Dazu gibt es den Befehl shift. Ändern Sie parameter wie folgt (-n bei echo unterdrückt das Newline): echo "ich heisse $0" echo "meine $# Parameter sind" echo -n "$1 " shift echo -n "$1 " shift echo -n "$1 " shift echo -n "$1 " shift und starten sie erneut: parameter Steinbock mit Aszendent Venus Die Parameter werden in die Variable $1 geschoben, d.h. die Variablen $1 bis $9 Bilden ein Fenster, im dem die 9 "vordersten" Parameter sichtbar sind. Finden Sie nicht auch, dass diese Version von parameter doch etwas rudimentär ist? Hier eine etwas elegantere Lösung:

6 Betriebssysteme Shell Scripts 6 for param in $@ do echo $param done In der Variablen $@ werden alle Parameter übergeben, die Variable param enthält der Reihe nach alle Parameter. Die for-schleife wird solange durchlaufen, bis keine Parameter mehr vorhanden sind, resp. bis $param = "" ist. So das war die erste Kontrollanweisung, mehr davon später. So, nun versuchen Sie's mal mit mehr als 10 Parametern, z.b.: parameter q w e r t z Sie sehen, es funktioniert? Übrigens jetzt wissen Sie auch, wieso Ihre PC-Tastatur auch QWERTZ- Tastatur genannt wird (Wieso wird in Amerika die Tastatur "qwerty keyboard" genannt?). 2.3 Who is Who Wechseln Sie bitte ins Verzeichnis shell/a3. Geben Sie den Befehl who in einem Shell Terminal ein. Stört es Sie nicht auch, dass Ihr Name mehr als einmal aufgelistet ist? Dem wollen wir abhelfen. Die Aufgabe: schreiben Sie ein Shell Script WhoIsWho das jeden Benutzer auf Ihrem Rechner nur einmal ausgibt (wie Sie zu anderen Benutzern kommen, erklären wir Ihnen später). Als Erstes müssen wir eine Listen mit allen Benutzern haben. Wie bekommen wir aber diese Information in eine Variable? Geben Sie einmal folgende Zeilen ein: CurrentUsers=`who` echo $CurrentUsers Die Ausgabe von who steht jetzt in der Variablen CurrentUsers zur Verfügung. Übrigens `who` heisst: führe den Befehl zuerst als Ganzes aus und gib dann das Resultat resp. die Ausgabe zurück. Was machen wir aber mit all der unnötigen Information, wir wollen ja nur die Benutzernamen? Erinnern Sie sich, die Benutzernamen stehen alle in der ersten Spalte... wir müssten also irgendwie auf diese Spalte zugreifen können. Selbstverständlich kein Problem, dazu gibt es awk oder gawk (gnu awk). awk (gawk) ist eine weitere sehr mächtige Script Sprache für Mustervergleiche etc., Details siehe [1]. Für uns interessant ist,, dass gawk Spalten aus formatierten Daten extrahieren kann, geben Sie folgende Sequenz ein (Sie wissen noch was der bedeutet?) und bitte vergessen Sie die blanks nicht: who gawk '{ print $1 " " }' Das ist doch, was wir wollen: es wird jeweils das erste Wort einer Zeile ausgedruckt, gefolgt von einem Blank (in " "). Ersetzen Sie " " durch "\n": was müsste passieren? So jetzt können wir die Benutzernamen in eine Variable speichern. Das dürfen Sie aber selber ausprobieren. Nachdem wir alle Benutzer ohne Zugemüse in CurrentUsers haben, müssen wir die überzähligen Namen eliminieren. Wir schlagen folgende Vorgehen vor: Sie verwenden eine zweite Liste z.b. mit Namen FinalList und intialisieren diese wie folgt: FinalList="" Das Kopieren von Namen aus CurrentUsers können Sie mit zwei verschachtelten for-schleifen realisieren: dazu vergleichen Sie Name um Name aus CurrentUsers mit jedem Namen in der

7 Betriebssysteme Shell Scripts 7 FinalList. Finden Sie zwei gleiche Namen, dann existiert der Name schon in der FinalList,, andernfalls müssen Sie den Namen in die FinalList kopieren. Nun zu den technischen Aspekten: wie Sie eine for-schleife implementieren, haben wir am Schluss von Aufgabe 2 gezeigt, nur müssen Sie hier statt $@ die Variable $CurrrentUsers oder die Variable $FinalList einsetzen. Weiter müssen Sie jeweils ein Name aus der äusseren Schleife mit einem Name aus der inneren Schleife vergleichen. Dazu brauchen Sie eine if-anweisung: if test "$nameaussen" = "$nameinnen" then... fi oder (vergessen Sie nicht die "blanks" bei den Klammern, Vorsicht, "=" für Strings, "-eq" für Integer) if [ "$nameaussen" = "$nameinnen" ] then... fi Weitere Informationen zur Funktion test oder zu [ ] finden Sie in den Kopien zu [1]. Ob Sie einen Namen gefunden haben oder nicht, realisieren Sie am besten mit einem Flag, das entweder den String true oder false enthält: flag="false" if [ "$flag" = "false" ]... Vergessen Sie vor lauter neuen Konstrukten nicht, am Schluss alle Namen auszudrucken. Wenn Sie die endgültige Liste ausgeben, können Sie noch die Namen durch sort "pipen", um sie alphabetisch zu sortieren (sort kann nur Zeilen sortieren): for name in $FinalList do echo $name done sort Für die ersten Tests des Scripts reicht es, wenn Sie alleine eingeloggt sind, für den "final test" können Sie Ihre Nachbarn fragen, ob sie sich nicht auf Ihrer Maschine remote einloggen würden: rlogin -l EinUserName IhrMaschinenName (inpcxy) 2.4 Zeit-Diebe Das Script maketimethieves erzeugt und startet mehrere Programme mit dem Namen TimeThief und simuliert so eine starke CPU-Last durch einige "unfreundliche" Programme. Sämtliche benötigten Daten, Programme, etc. sind in einem einzigen Shell Script vereinigt, das auch alle temporär erzeugten Dateien wieder sauber aufräumt. Das einzige was das Script hinterlässt sind 40 laufende Programme namens TimeThief. TimeThief ist ein C-Programm, das nichts anderes macht, als in einer unendlichen Schleife CPU-Zeit zu stehlen (Sie werden feststellen, dass die Antwortzeit des System ziemlich startk leidet). Sollten Sie aus versehen maketimethieves bereits gestartet haben, können Sie mit "killall TimeThief" die Zeit-Diebe wieder entfernen. Betrachten wir das Script maketimethieves etwas näher (siehe unten). Es fällt Ihnen sicher auf, dass der C-Code für das Programm TimeThief in das Script integriert ist. Hier verwenden wir die Möglichkeit, Daten oder Texte aus der Script-Datei, auf den Standard Input eines anderen Programmes

8 Betriebssysteme Shell Scripts 8 umzuleiten: dazu müssen die Daten zwischen den Zeichenfolgen <++ und ++ abgelegt werden. In unserem Beispiel liest cat den Programmcode für TimeThief aus dem Script und schreibt den Output in die Datei TimeThief.cc. Der Vorteil dieser Methode ist, dass sämtliche Daten in einer einzigen Datei gehalten werden können. Als Nächstes wird TimeThief übersetzt, dann der Source Code gelöscht und das Programm TimeThieve 40 mal gestartet.... ausser Sie haben die Anzahl als Parameter angegeben. Ganz am Schluss wird auch das Programm gelöscht, es wird nicht mehr benötigt. Überlegen Sie sich, wieso das Programm gelöscht werden kann und die Zeit-Diebe trotzdem weiterlaufen. Sie haben sich sicher gewundert, wie das Programm gestartet wird: TimeThief &>/dev/null & &> leitet stdout und stderr in eine Datei um, damit muss /dev/null eine Datei sein. Das & am Schluss heisst, dass der Prozess im Hintergrund laufen soll. Nun was ist /dev/null? /dev/null ist ein Null Gerät (Geräte unter Unix/Linux werden prinzipiell wie Dateien behandelt) und funktioniert wie ein "bodenloser" Papierkorb: alles was Sie hineinwerfen verschwindet. Vorsicht, wenn Sie eine Datei mit mv nach /dev/null verschieben, ist Sie weg. Probieren Sie's mal mit einer Datei, die Sie nicht mehr benötigen. So, jetzt aber endlich der Code von maketimethieves: #!/bin/bash cat >./TimeThief.cc <<++ int main(void) { int a = 1; while (a < 2) { a = a*a; } } ++ g++ TimeThief.cc -o TimeThief rm TimeThief.cc if test "$1" = "" then max=10 else max = $1 fi let anzahl=0 while [ $anzahl -lt $max ] do TimeThief &> /dev/null & let anzahl=anzahl+1 done rm TimeThief Starten Sie die Zeit-Diebe nun bitte wie folgt (für Testzwecke reichen 5 Diebe): maketimethieves 5 Mit dem Befehl ps -a können Sie Informationen zu Ihren laufenden Prozessen abrufen. Jeder Prozess besitzt eine Nummer, die PID (Zahl ganz links). Starten Sie nun in einem eigenen Fenster den Befehl top (dann eine u und ihren Benutzernamen eingeben). Sie sehen nun, wie die 5 Zeit-Diebe die

9 Betriebssysteme Shell Scripts 9 CPU-Zeit belasten. Mit dem Befehl renice können Sie die Zeit-Diebe "freundlicher" machen, d.h. Sie können Ihre Rechenpriorität gegenüber anderen Prozessen entsprechend anpassen, z.b. macht renice 20 PID den Prozess mit ProzessID PID so freundlich wie nur möglich (je höher die Zahl, desto freundlicher, das Maximum liegt MAX_PRIO (echo $MAX_PRIO), meist 20). Machen Sie jetzt alle Zeit-Diebe so freundlich wie möglich. Im Fenster mit top sehen Sie, dass jeder freundliche Zeit-Dieb ein N erhält. Entfernen Sie anschliessend die Zeit-Diebe mit killall TimeThief. War ein Bisschen mühsam, nicht? Einfacher hätten Sie's gehabt, wenn ein Befehl zur Verfügung steht, der alle Programme mit einem bestimmten Namen freundlich macht, z.b. macht BeNice TimeThief alle Programme mit Namen TimeThief freundlich. Ihre Aufgabe ist es, ein Script zu schreiben, das genau diese Funktion implementiert. Betrachten Sie dazu zuerst die Ausgabe von ps: eine Tabelle mit Prozess IDs und den Namen der Programme. Wie Sie an die Information in den einzelnen Spalten kommen, haben wir in der letzten Aufgabe gesehen, aber wie kommen wir an die Zeilen mit den Prozessnamen? Dazu steht der Befehl grep zur Verfügung, z.b.: maketimethieves 2 ps grep TimeThief Was grep sonst noch so alles kann, finden Sie in den Unix Manuals (werfen Sie gelegentlich einen einen Blick hinein, es lohnt sich). Beenden Sie nun die zwei Zeit-Diebe wieder, sie machen Ihre Maschine nur langsam. Jetzt kennen Sie alle notwendigen Funktionen, die wir brauchen. Ihre Aufgabe: Schreiben Sie ein Script mit Namen BeNice, dem Sie als Parameter den Namen eines Programmes und den gewünschten "nice" Wert übergeben und das alle laufenden Programme mit diesem Namen "besänftigt". Damit es noch ein Bisschen spannender wird, sollte die Ausgabe Ihres Scriptes etwa folgendermassen aussehen: be nice TimeThief nr da warens nur noch 3 be nice TimeThief nr da warens nur noch 2 etc. 537 resp. 536 sind die PIDs des besänftigten Zeit-Diebes. Wie kommen Sie zur Anzahl laufender Zeit-Diebe. Die Anzahl Wörter in einer Datei oder einer Variablen können Sie mit dem Befehl wc (word count) zählen: woerter=`echo "einige Woerter zum Test"` anzahl=`echo $woerter wc -w` echo $anzahl Nun müssen Sie die Anzahl noch nicht "besänftigter" Zeit-Diebe ausgeben. Rechnen können Sie mit dem Befehl let. Hier für unser Beispiel: let anzahl=anzahl-1 echo $anzahl Beachten Sie, dass Sie hier ohne $ arbeiten müssenn. Mehr zu let in den Manuals.

10 Betriebssysteme Shell Scripts Nomadic Computing Sie arbeiten sicher an den verschiedensten Orten und ärgern sich dauernd, dass Ihre Dateien nicht überall auf dem gleichen Stand sind. Dem wollen wir abhelfen: in dieser Aufgabenstellung schreiben Sie ein Script, das zwei Verzeichnisse und die darin enthaltenen Dateien und Unterverzeichnisse abgleicht resp. jeweils auf den aktuellsten Stand bringt. Für das Kopieren können Sie den cp Befehl verwenden. Wenn Sie die richtigen Optionen wählen, kopiert er rekursiv und überschreibt eine Datei nur, wenn sie älter ist. Wie man das macht schauen Sie am Besten in den Online Manuals nach. Da Sie Ihr Script der Öffentlichkeit zugänglich machen wollen, müssen Sie einen "wrapper" schreiben, der nach den zwei Verzeichnissen fragt (falls diese nicht als Parameter übergeben wurden) und dann auch testet, ob die Verzeichnisse existieren. Für den Abgleich gehen wir der Einfachheit halber davon aus, dass beide Verzeichnisse existieren, das eine darf aber leer sein. Wie man die Abfrage gestaltet, können Sie folgendem Code Fragment entnehmen: let flag=0 until test $flag -eq 1 do if test "$dir1" = "" then echo -n "dirctory 1: " read dir1 else dir1=$1 fi if test "$dir1" = "" then echo "please give directory" elif [! -d $dir1 ] then dir1="" Anmerkung: muss auf "" gesetzt werden, sonst infinit loop echo "directory does not exist" else let flag=1 fi done Sie finden dieses Code Fragment auch im Verzeichnis shell/a5, Datei abgleich. Vervollständigen Sie das Script gemäss Aufgabenstellung. Zum Testen der Funktionalität können Sie zwei Verzeichnisse mit weiteren Verzeichnissen und Dateien anlegen. Die Dateien erzeugen Sie am Besten z.b. mit: cat > file1 Hallo CTRL-D Alte und neue Dateien können Sie mit dem Befehl touch erzeugen: touch -t file1 der Befehl setzt das Datum der Datei file1 auf Jahr 1977, Juli (07), 11. Tag (11), 18 Uhr, 24 Minuten(Format YYMMDDHHMM). Anschauen können Sie diese Dateiattribute mit ls -al.

11 Betriebssysteme Shell Scripts Dateileichen Haben Sie sich auch schon gewundert, wieso Disks nie genügend gross sind? Ursache sind all die Dateien, die von den Benutzern zwar erzeugt wurden, aber nachher nie mehr angerührt wurden, also längst "gestorben" sind. Deshalb macht es Sinn die Benutzerverzeichnisse von Zeit zu Zeit nach Dateileichen abzusuchen, diese zu archivieren und dann zu löschen. Wie man das macht, wollen wir uns im folgenden anschauen. Wechseln Sie ins Verzeichnis shell/a6. Bitte Löschen Sie nicht wirklich Dateien über das Script, sollte Ihr Script nämlich Fehler haben... Schreiben Sie ein Script dem folgende Parameter übergeben werden sollen: erster Parameter: folgende Parameter: Startverzeichnis Liste mit Benutzernamen Alle Dateien der angegebenen Benutzer, die älter als 180 Tage sind, sollen archiviert werden und dem Benutzer eine Mail mit der Liste dieser Dateien zugestellt werden. Teilen Sie dem Benutzer bitte auch mit, was mit den Dateien geschehen ist. Wir müssen verschiedene Listen, Meldungen, etc. in Dateien anlegen. Dazu können wir das Verzeichnis /tmp verwenden, das auf jedem Unix System für die temporäre Ablage von Daten zur Verfügung steht. Die Dateileichen sollen im Verzeichnis /tmp/leichen abgelegt werden und zwar mit dem gesamten Verzeichnisbaum, damit sie, falls doch noch benötigt, einfach wieder gefunden werden können. Jedesmal wenn das Script gestartet wird, muss als erstes das Verzeichnis /tmp/leichen gelöscht und wieder erzeugt werden, um zu verhindern, dass alte Dateien mehrfach gespeichert werden: rm -rf /tmp/leichen mkdir /tmp/leichen Als Nächstes erstellen wir eine Liste mit den Dateileichen. Dazu verwenden wir den Befehl find. Welche Optionen Sie verwenden müssen, entnehmen Sie bitte den kopierten Seiten aus [1]. Beachten Sie, dass das Startverzeichnis und der jeweilige Benutzer bekannt sind. Speichern Sie die gefundenen Dateien in /tmp/leichenliste. Jetzt müssen wir die Dateien kopieren. Da cp nicht die ganzen Pfadnamen beibehalten kann, behelfen wir uns mit tar. Sie erhalten hier die dazu notwendige Scriptzeile, überlegen Sie sich mit Hilfe des Manuals was genau geschieht: tar c `cat /tmp/leichenliste` (cd /tmp/leichen; tar x) Nun könnte man die einzelnen Dateien im Benutzerverzeichnis löschen rm `cat /tmp/leichenliste` aber!!!!!!!, lassen Sie das lieber vorerst bleiben. Am Schluss erhält der Benutzer noch eine nette cat /tmp/meldung /tmp/leichenliste mail username Dazu haben Sie vorher die Datei /tmp/meldung mit Text aus dem Script erzeugt. Mails kann man mit dem Befehl mail lesen. mail meldet sich mit einem &, geben Sie die Nummer der Mail und dann einen Zeilenwechsel (CR): die Meldung wird auf dem Bildschirm ausgegeben. Mit dem Befehl d mailnummer CR können Sie die Mail löschen, mail verlassen Sie mit q CR. Vergessen Sie nicht, diese Befehle in einer Schleife für alle angegebenen Benutzer auszuführen. Ganz am Schluss archivieren Sie die Dateileichen (Dateien in /tmp/leichen) in einer tar-datei mit Namen OldFilesArchive (cd /tmp/leichen; tar c > OldFilesArchive)

12 Betriebssysteme Shell Scripts 12 Da Sie keine Administrator-Rechte haben, können Sie nur Ihr eigenes Verzeichnis absuchen. wir empfehlen Ihnen deshalb das Script wie folgt aufzurufen (wir nennen es archi): archi $HOME IhrUserName Zum Austesten Ihres Scriptes haben wir das Script makeoldfiles geschrieben, das im Praktikumsordner alte Dateien erzeugt. Jedesmal wenn Sie Ihr Script ausgeführt haben, werden die Dateien als von tar "touched" gebrandmarkt und können kein zweites Mal durch find gefunden werden. D.h. Sie müssen vor jedem Start von archi zuerst makeoldfiles laufen lassen.

Der zweite all unsere Datenbanken. Dieser Befehl ist etwas komplexer, aber bis auf das Passwort (kursiv fett) so zu übernehmen:

Der zweite all unsere Datenbanken. Dieser Befehl ist etwas komplexer, aber bis auf das Passwort (kursiv fett) so zu übernehmen: Antwort: Automatisierte Backups sind nicht Teil von Confixx. Mit Hilfe von Cronjobs ist es aber dennoch möglich. Als Zielordner wählen wir das Files-Verzeichnis. Die Backups werden im Confixx-Format angefertigt

Mehr

Wie halte ich Ordnung auf meiner Festplatte?

Wie halte ich Ordnung auf meiner Festplatte? Wie halte ich Ordnung auf meiner Festplatte? Was hältst du von folgender Ordnung? Du hast zu Hause einen Schrank. Alles was dir im Wege ist, Zeitungen, Briefe, schmutzige Wäsche, Essensreste, Küchenabfälle,

Mehr

Erstellen der Barcode-Etiketten:

Erstellen der Barcode-Etiketten: Erstellen der Barcode-Etiketten: 1.) Zuerst muss die Schriftart Code-39-Logitogo installiert werden! Das ist eine einmalige Sache und muss nicht zu jeder Börse gemacht werden! Dazu speichert man zunächst

Mehr

Luis Kornblueh. May 22, 2014

Luis Kornblueh. May 22, 2014 Einführung in die Bash Luis Kornblueh KlosterCluster Team 2013/2014, Klosterschule May 22, 2014 1 / 17 Inhaltsverzeichnis Einführung in das Scripting Einfache Beispiele Kommandos ersetzen Bedingungen Tests

Mehr

Primzahlen und RSA-Verschlüsselung

Primzahlen und RSA-Verschlüsselung Primzahlen und RSA-Verschlüsselung Michael Fütterer und Jonathan Zachhuber 1 Einiges zu Primzahlen Ein paar Definitionen: Wir bezeichnen mit Z die Menge der positiven und negativen ganzen Zahlen, also

Mehr

Zwischenablage (Bilder, Texte,...)

Zwischenablage (Bilder, Texte,...) Zwischenablage was ist das? Informationen über. die Bedeutung der Windows-Zwischenablage Kopieren und Einfügen mit der Zwischenablage Vermeiden von Fehlern beim Arbeiten mit der Zwischenablage Bei diesen

Mehr

Mediator 9 - Lernprogramm

Mediator 9 - Lernprogramm Mediator 9 - Lernprogramm Ein Lernprogramm mit Mediator erstellen Mediator 9 bietet viele Möglichkeiten, CBT-Module (Computer Based Training = Computerunterstütztes Lernen) zu erstellen, z. B. Drag & Drop

Mehr

Erweiterung der Aufgabe. Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen:

Erweiterung der Aufgabe. Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen: VBA Programmierung mit Excel Schleifen 1/6 Erweiterung der Aufgabe Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen: Es müssen also 11 (B L) x 35 = 385 Zellen berücksichtigt

Mehr

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren Lineargleichungssysteme: Additions-/ Subtraktionsverfahren W. Kippels 22. Februar 2014 Inhaltsverzeichnis 1 Einleitung 2 2 Lineargleichungssysteme zweiten Grades 2 3 Lineargleichungssysteme höheren als

Mehr

Ordnung auf/im (Win-)PC bzw. der Festplatte

Ordnung auf/im (Win-)PC bzw. der Festplatte Ordnung auf/im (Win-)PC bzw. der Festplatte Ein Versuch da was zu (er)klären von Uwe Troll Vorbemerkung: Alles was später hier gezeigt wird, wird auf Ihrem PC anders aussehen! Das Prinzip bleibt aber gleich.

Mehr

Stundenerfassung Version 1.8 Anleitung Arbeiten mit Replikaten

Stundenerfassung Version 1.8 Anleitung Arbeiten mit Replikaten Stundenerfassung Version 1.8 Anleitung Arbeiten mit Replikaten 2008 netcadservice GmbH netcadservice GmbH Augustinerstraße 3 D-83395 Freilassing Dieses Programm ist urheberrechtlich geschützt. Eine Weitergabe

Mehr

Das sogenannte Beamen ist auch in EEP möglich ohne das Zusatzprogramm Beamer. Zwar etwas umständlicher aber es funktioniert

Das sogenannte Beamen ist auch in EEP möglich ohne das Zusatzprogramm Beamer. Zwar etwas umständlicher aber es funktioniert Beamen in EEP Das sogenannte Beamen ist auch in EEP möglich ohne das Zusatzprogramm Beamer. Zwar etwas umständlicher aber es funktioniert Zuerst musst du dir 2 Programme besorgen und zwar: Albert, das

Mehr

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang sysplus.ch outlook - mail-grundlagen Seite 1/8 Outlook Mail-Grundlagen Posteingang Es gibt verschiedene Möglichkeiten, um zum Posteingang zu gelangen. Man kann links im Outlook-Fenster auf die Schaltfläche

Mehr

Handbuch für Redakteure

Handbuch für Redakteure Handbuch für Redakteure Erste Schritte... 1 Artikel erstellen... 2 Artikelinhalt bearbeiten... 3 Artikel bearbeiten... 3 Grunddaten ändern... 5 Weitere Artikeleigenschaften... 5 Der WYSIWYG-Editor... 6

Mehr

Linux Prinzipien und Programmierung

Linux Prinzipien und Programmierung Linux Prinzipien und Programmierung Dr. Klaus Höppner Hochschule Darmstadt Sommersemester 2014 1 / 25 2 / 25 Pipes Die Bash kennt drei Standard-Dateideskriptoren: Standard In (stdin) Standard-Eingabe,

Mehr

Handbuch Fischertechnik-Einzelteiltabelle V3.7.3

Handbuch Fischertechnik-Einzelteiltabelle V3.7.3 Handbuch Fischertechnik-Einzelteiltabelle V3.7.3 von Markus Mack Stand: Samstag, 17. April 2004 Inhaltsverzeichnis 1. Systemvorraussetzungen...3 2. Installation und Start...3 3. Anpassen der Tabelle...3

Mehr

1 Vom Problem zum Programm

1 Vom Problem zum Programm Hintergrundinformationen zur Vorlesung GRUNDLAGEN DER INFORMATIK I Studiengang Elektrotechnik WS 02/03 AG Betriebssysteme FB3 Kirsten Berkenkötter 1 Vom Problem zum Programm Aufgabenstellung analysieren

Mehr

Menü Macro. WinIBW2-Macros unter Windows7? Macros aufnehmen

Menü Macro. WinIBW2-Macros unter Windows7? Macros aufnehmen Menü Macro WinIBW2-Macros unter Windows7?... 1 Macros aufnehmen... 1 Menübefehle und Schaltflächen in Macros verwenden... 4 Macros bearbeiten... 4 Macros löschen... 5 Macro-Dateien... 5 Macros importieren...

Mehr

Aufgabensammlung IT 4131. Shellprogrammierung Teil I

Aufgabensammlung IT 4131. Shellprogrammierung Teil I Aufgabensammlung IT 4131 Shellprogrammierung Teil I Fragen: I.1 Was ist eine Shell? Skript 1.1.2, S. 4 a) aus der Sicht des Betriebssystems b) aus der Sicht des Anwenders I.2 Was ist ein Shell-Skript?

Mehr

Datenbanken Kapitel 2

Datenbanken Kapitel 2 Datenbanken Kapitel 2 1 Eine existierende Datenbank öffnen Eine Datenbank, die mit Microsoft Access erschaffen wurde, kann mit dem gleichen Programm auch wieder geladen werden: Die einfachste Methode ist,

Mehr

Objektorientiertes Programmieren mit Suse Linux

Objektorientiertes Programmieren mit Suse Linux Objektorientiertes Programmieren mit Suse Linux Zum Programmieren werden 2 Komponenten benötigt: 1. einen Editor zur Eingabe des Quellcodes 2. einen Compiler, der den Quellcode in die Maschinensprache

Mehr

Windows. Workshop Internet-Explorer: Arbeiten mit Favoriten, Teil 1

Windows. Workshop Internet-Explorer: Arbeiten mit Favoriten, Teil 1 Workshop Internet-Explorer: Arbeiten mit Favoriten, Teil 1 Wenn der Name nicht gerade www.buch.de oder www.bmw.de heißt, sind Internetadressen oft schwer zu merken Deshalb ist es sinnvoll, die Adressen

Mehr

Skripte. Beispiel. http://www.icp.uni-stuttgart.de. M. Fyta Computergrundlagen 73/93

Skripte. Beispiel. http://www.icp.uni-stuttgart.de. M. Fyta Computergrundlagen 73/93 Skripte Wie kann ich mir komplexe Befehle merken? Gar nicht aber der Computer kann es für mich! Einfach die Befehle in eine Textdatei schreiben und ausführbar machen #! (Shebang) in der ersten Zeile bestimmt

Mehr

Professionelle Seminare im Bereich MS-Office

Professionelle Seminare im Bereich MS-Office Serienbrief aus Outlook heraus Schritt 1 Zuerst sollten Sie die Kontakte einblenden, damit Ihnen der Seriendruck zur Verfügung steht. Schritt 2 Danach wählen Sie bitte Gerhard Grünholz 1 Schritt 3 Es öffnet

Mehr

Übungen 19.01.2012 Programmieren 1 Felix Rohrer. Übungen

Übungen 19.01.2012 Programmieren 1 Felix Rohrer. Übungen Übungen if / else / else if... 2... 2 Aufgabe 2:... 2 Aufgabe 3:... 2 Aufgabe 4:... 2 Aufgabe 5:... 2 Aufgabe 6:... 2 Aufgabe 7:... 3 Aufgabe 8:... 3 Aufgabe 9:... 3 Aufgabe 10:... 3 switch... 4... 4 Aufgabe

Mehr

Internationales Altkatholisches Laienforum

Internationales Altkatholisches Laienforum Internationales Altkatholisches Laienforum Schritt für Schritt Anleitung für die Einrichtung eines Accounts auf admin.laienforum.info Hier erklären wir, wie ein Account im registrierten Bereich eingerichtet

Mehr

Dateimanagement in Moodle Eine Schritt-für

Dateimanagement in Moodle Eine Schritt-für Übersicht: Lehrende können Dateien in einen Moodle-Kurs hochladen, in Verzeichnissen verwalten und für Studierende zugänglich machen. Jeder Moodle-Kurs hat einen Hauptordner Dateien im Administrationsblock.

Mehr

Wordpress: Blogbeiträge richtig löschen, archivieren und weiterleiten

Wordpress: Blogbeiträge richtig löschen, archivieren und weiterleiten Wordpress: Blogbeiträge richtig löschen, archivieren und weiterleiten Version 1.0 Wordpress: Blogbeiträge richtig löschen, archivieren und weiterleiten In unserer Anleitung zeigen wir Dir, wie Du Blogbeiträge

Mehr

Einführungskurs MOODLE Themen:

Einführungskurs MOODLE Themen: Einführungskurs MOODLE Themen: Grundlegende Einstellungen Teilnehmer in einen Kurs einschreiben Konfiguration der Arbeitsunterlagen Konfiguration der Lernaktivitäten Die Einstellungen für einen Kurs erreichst

Mehr

Diese Anleitung wurde erstellt von Niclas Lüchau und Daniel Scherer. Erste Anmeldung. Schritt 1: Anmeldung..2. Schritt 2: Passwort setzen 3

Diese Anleitung wurde erstellt von Niclas Lüchau und Daniel Scherer. Erste Anmeldung. Schritt 1: Anmeldung..2. Schritt 2: Passwort setzen 3 Diese Anleitung wurde erstellt von Niclas Lüchau und Daniel Scherer Inhalt Erste Anmeldung. Schritt 1: Anmeldung..2 Schritt 2: Passwort setzen 3 Schritt 3: Nachträgliches Ändern des Passworts..4 Schreiben

Mehr

Erstellen von x-y-diagrammen in OpenOffice.calc

Erstellen von x-y-diagrammen in OpenOffice.calc Erstellen von x-y-diagrammen in OpenOffice.calc In dieser kleinen Anleitung geht es nur darum, aus einer bestehenden Tabelle ein x-y-diagramm zu erzeugen. D.h. es müssen in der Tabelle mindestens zwei

Mehr

1.Unterschied: Die Übungen sind nicht von deinem Mathe-Lehrer...

1.Unterschied: Die Übungen sind nicht von deinem Mathe-Lehrer... mit den Spezialkursen so funktioniert es! Liebe Schülerinnen und Schüler, wenn ihr jetzt sagt: Mathe üben mit dem PC? Cool, wie funktioniert das denn? dann seid ihr hier im Mathe-Online-Center genau richtig.

Mehr

Anleitung über den Umgang mit Schildern

Anleitung über den Umgang mit Schildern Anleitung über den Umgang mit Schildern -Vorwort -Wo bekommt man Schilder? -Wo und wie speichert man die Schilder? -Wie füge ich die Schilder in meinen Track ein? -Welche Bauteile kann man noch für Schilder

Mehr

Wie Sie mit Mastern arbeiten

Wie Sie mit Mastern arbeiten Wie Sie mit Mastern arbeiten Was ist ein Master? Einer der großen Vorteile von EDV besteht darin, dass Ihnen der Rechner Arbeit abnimmt. Diesen Vorteil sollten sie nutzen, wo immer es geht. In PowerPoint

Mehr

Enigmail Konfiguration

Enigmail Konfiguration Enigmail Konfiguration 11.06.2006 Steffen.Teubner@Arcor.de Enigmail ist in der Grundkonfiguration so eingestellt, dass alles funktioniert ohne weitere Einstellungen vornehmen zu müssen. Für alle, die es

Mehr

Kurzanleitung fu r Clubbeauftragte zur Pflege der Mitgliederdaten im Mitgliederbereich

Kurzanleitung fu r Clubbeauftragte zur Pflege der Mitgliederdaten im Mitgliederbereich Kurzanleitung fu r Clubbeauftragte zur Pflege der Mitgliederdaten im Mitgliederbereich Mitgliederbereich (Version 1.0) Bitte loggen Sie sich in den Mitgliederbereich mit den Ihnen bekannten Zugangsdaten

Mehr

Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster

Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster Es gibt in Excel unter anderem die so genannten Suchfunktionen / Matrixfunktionen Damit können Sie Werte innerhalb eines bestimmten Bereichs suchen. Als Beispiel möchte ich die Funktion Sverweis zeigen.

Mehr

Flyer, Sharepics usw. mit LibreOffice oder OpenOffice erstellen

Flyer, Sharepics usw. mit LibreOffice oder OpenOffice erstellen Flyer, Sharepics usw. mit LibreOffice oder OpenOffice erstellen Wir wollen, dass ihr einfach für eure Ideen und Vorschläge werben könnt. Egal ob in ausgedruckten Flyern, oder in sozialen Netzwerken und

Mehr

Professionelle Seminare im Bereich MS-Office

Professionelle Seminare im Bereich MS-Office Der Name BEREICH.VERSCHIEBEN() ist etwas unglücklich gewählt. Man kann mit der Funktion Bereiche zwar verschieben, man kann Bereiche aber auch verkleinern oder vergrößern. Besser wäre es, die Funktion

Mehr

EINFACHES HAUSHALT- KASSABUCH

EINFACHES HAUSHALT- KASSABUCH EINFACHES HAUSHALT- KASSABUCH Arbeiten mit Excel Wir erstellen ein einfaches Kassabuch zur Führung einer Haushalts- oder Portokasse Roland Liebing, im November 2012 Eine einfache Haushalt-Buchhaltung (Kassabuch)

Mehr

Punkt 1 bis 11: -Anmeldung bei Schlecker und 1-8 -Herunterladen der Software

Punkt 1 bis 11: -Anmeldung bei Schlecker und 1-8 -Herunterladen der Software Wie erzeugt man ein Fotobuch im Internet bei Schlecker Seite Punkt 1 bis 11: -Anmeldung bei Schlecker und 1-8 -Herunterladen der Software Punkt 12 bis 24: -Wir arbeiten mit der Software 8-16 -Erstellung

Mehr

Finder > 'Programme' > 'Dienstprogramme' > 'Terminal'

Finder > 'Programme' > 'Dienstprogramme' > 'Terminal' Kommandozeile Unter bestimmten Umständen kann es sehr nützlich sein, mit der Kommandozeile umgehen zu können, vor allem im Hinblick auf Automatisierungsmöglichkeiten mit Batch-Programmen. Daher werden

Mehr

ec@ros2-installer ecaros2 Installer procar informatik AG 1 Stand: FS 09/2012 Eschenweg 7 64331 Weiterstadt

ec@ros2-installer ecaros2 Installer procar informatik AG 1 Stand: FS 09/2012 Eschenweg 7 64331 Weiterstadt ecaros2 Installer procar informatik AG 1 Stand: FS 09/2012 Inhaltsverzeichnis 1 Download des ecaros2-installer...3 2 Aufruf des ecaros2-installer...3 2.1 Konsolen-Fenster (Windows)...3 2.2 Konsolen-Fenster

Mehr

Arbeiten mit UMLed und Delphi

Arbeiten mit UMLed und Delphi Arbeiten mit UMLed und Delphi Diese Anleitung soll zeigen, wie man Klassen mit dem UML ( Unified Modeling Language ) Editor UMLed erstellt, in Delphi exportiert und dort so einbindet, dass diese (bis auf

Mehr

Drucken aus der Anwendung

Drucken aus der Anwendung Drucken aus der Anwendung Drucken aus der Anwendung Nicht jeder Großformatdruck benötigt die volle Funktionsvielfalt von PosterJet - häufig sind es Standarddrucke wie Flussdiagramme und Organigramme die

Mehr

Leitfaden zur ersten Nutzung der R FOM Portable-Version für Windows (Version 1.0)

Leitfaden zur ersten Nutzung der R FOM Portable-Version für Windows (Version 1.0) Leitfaden zur ersten Nutzung der R FOM Portable-Version für Windows (Version 1.0) Peter Koos 03. Dezember 2015 0 Inhaltsverzeichnis 1 Voraussetzung... 3 2 Hintergrundinformationen... 3 2.1 Installationsarten...

Mehr

Handbuch. NAFI Online-Spezial. Kunden- / Datenverwaltung. 1. Auflage. (Stand: 24.09.2014)

Handbuch. NAFI Online-Spezial. Kunden- / Datenverwaltung. 1. Auflage. (Stand: 24.09.2014) Handbuch NAFI Online-Spezial 1. Auflage (Stand: 24.09.2014) Copyright 2016 by NAFI GmbH Unerlaubte Vervielfältigungen sind untersagt! Inhaltsangabe Einleitung... 3 Kundenauswahl... 3 Kunde hinzufügen...

Mehr

Wiederholung und Vertiefung. Programmieren in C. Pointer und so... thoto. /dev/tal e.v. 6. April 2013 (Version vom 11. April 2013) Programmieren in C

Wiederholung und Vertiefung. Programmieren in C. Pointer und so... thoto. /dev/tal e.v. 6. April 2013 (Version vom 11. April 2013) Programmieren in C Pointer und so... 6. April 2013 (Version vom 11. April 2013) Agenda für Heute 1 Wiederholung und Vertiefung Wiederholung 2 Was sind? Felder und Vektoren? Zeichenketten Wiederholung Wiederholung Funktion

Mehr

5 DATEN. 5.1. Variablen. Variablen können beliebige Werte zugewiesen und im Gegensatz zu

5 DATEN. 5.1. Variablen. Variablen können beliebige Werte zugewiesen und im Gegensatz zu Daten Makro + VBA effektiv 5 DATEN 5.1. Variablen Variablen können beliebige Werte zugewiesen und im Gegensatz zu Konstanten jederzeit im Programm verändert werden. Als Variablen können beliebige Zeichenketten

Mehr

Flash Videos einbinden

Flash Videos einbinden Flash Videos einbinden Im Kapitel Videos einbinden ( - ) haben Sie gesehen, wie man einfach und ohne Zusatzprogramme kleine Videoclips auf seiner einbinden kann. Ich persönlich würde jedem dieses Verfahren

Mehr

Windows 8.1. Grundkurs kompakt. Markus Krimm, Peter Wies 1. Ausgabe, Januar 2014. inkl. zusätzlichem Übungsanhang K-W81-G-UA

Windows 8.1. Grundkurs kompakt. Markus Krimm, Peter Wies 1. Ausgabe, Januar 2014. inkl. zusätzlichem Übungsanhang K-W81-G-UA Markus Krimm, Peter Wies 1. Ausgabe, Januar 2014 Windows 8.1 Grundkurs kompakt inkl. zusätzlichem Übungsanhang K-W81-G-UA 1.3 Der Startbildschirm Der erste Blick auf den Startbildschirm (Startseite) Nach

Mehr

Hardware - Software - Net zwerke

Hardware - Software - Net zwerke Komprimierung der Ortho-Daten als ZIP-Archiv Dieses Dokument beschreibt die Archivierung aller Ortho-Daten als ZIP-Archiv über die MS- DOS-Eingabe-Aufforderung. Diese Information kann Ihnen zum Sichern

Mehr

1. Aktionen-Palette durch "Fenster /Aktionen ALT+F9" öffnen. 2. Anlegen eines neuen Set über "Neues Set..." (über das kleine Dreieck zu erreichen)

1. Aktionen-Palette durch Fenster /Aktionen ALT+F9 öffnen. 2. Anlegen eines neuen Set über Neues Set... (über das kleine Dreieck zu erreichen) Tipp: Aktionen (c) 2005 Thomas Stölting, Stand: 25.4. 2005 In Photoshop werden häufig immer wieder die gleichen Befehlssequenzen benötigt. Um sie nicht jedesmal manuell neu eingeben zu müssen, können diese

Mehr

Fachhochschule Fulda. Bedienungsanleitung für QISPOS (Prüfungsanmeldung, Notenspiegel und Bescheinigungen)

Fachhochschule Fulda. Bedienungsanleitung für QISPOS (Prüfungsanmeldung, Notenspiegel und Bescheinigungen) Fachhochschule Fulda Bedienungsanleitung für QISPOS (Prüfungsanmeldung, Notenspiegel und Bescheinigungen) Inhaltsverzeichnis 1. Vorgehensweise bei der ersten Anmeldung... 1 2. Startseite... 1 3. Login...

Mehr

Anwender-Dokumentation. Update ATOSS WINDOWS. Versionswechsel innerhalb der V2.5

Anwender-Dokumentation. Update ATOSS WINDOWS. Versionswechsel innerhalb der V2.5 Anwender-Dokumentation Update ATOSS WINDOWS Versionswechsel innerhalb der V2.5 Allgemein Diese Dokumentation beschreibt das Aktualisieren eines Windows-ATOSS-Servers auf die Version 2.5 vom 01.Juli 2011.

Mehr

Erwin Grüner 09.02.2006

Erwin Grüner 09.02.2006 FB Psychologie Uni Marburg 09.02.2006 Themenübersicht Folgende Befehle stehen in R zur Verfügung: {}: Anweisungsblock if: Bedingte Anweisung switch: Fallunterscheidung repeat-schleife while-schleife for-schleife

Mehr

Wie man eigene Programme erstellt

Wie man eigene Programme erstellt Kapitel 3 Wie man eigene Programme erstellt In diesem Kapitel geht es darum, sich mit einem Compiler vertraut zu machen. Dabei erfahren Sie, wie Sie eigene Programme auf den Systemen Windows und Linux

Mehr

Handbuch für Redakteure

Handbuch für Redakteure Handbuch für Redakteure Erste Schritte... 1 Artikel erstellen... 2 Artikelinhalt bearbeiten... 3 Artikel bearbeiten... 3 Trennen der Druck- und der Online-Version.. 4 Grunddaten ändern... 5 Weitere Artikel-eigenschaften...

Mehr

Erstellen einer Collage. Zuerst ein leeres Dokument erzeugen, auf dem alle anderen Bilder zusammengefügt werden sollen (über [Datei] > [Neu])

Erstellen einer Collage. Zuerst ein leeres Dokument erzeugen, auf dem alle anderen Bilder zusammengefügt werden sollen (über [Datei] > [Neu]) 3.7 Erstellen einer Collage Zuerst ein leeres Dokument erzeugen, auf dem alle anderen Bilder zusammengefügt werden sollen (über [Datei] > [Neu]) Dann Größe des Dokuments festlegen beispielsweise A4 (weitere

Mehr

Wir arbeiten mit Zufallszahlen

Wir arbeiten mit Zufallszahlen Abb. 1: Bei Kartenspielen müssen zu Beginn die Karten zufällig ausgeteilt werden. Wir arbeiten mit Zufallszahlen Jedesmal wenn ein neues Patience-Spiel gestartet wird, muss das Computerprogramm die Karten

Mehr

Programmierkurs Java

Programmierkurs Java Programmierkurs Java Dr. Dietrich Boles Aufgaben zu UE16-Rekursion (Stand 09.12.2011) Aufgabe 1: Implementieren Sie in Java ein Programm, das solange einzelne Zeichen vom Terminal einliest, bis ein #-Zeichen

Mehr

BEDIENUNG ABADISCOVER

BEDIENUNG ABADISCOVER BEDIENUNG ABADISCOVER Juni 2005 / EMO v.2005.1 Diese Unterlagen sind urheberrechtlich geschützt. Alle Rechte, auch die der Übersetzung, des Nachdrucks und der Vervielfältigung der Unterlagen, oder Teilen

Mehr

Anton Ochsenkühn. amac BUCH VERLAG. Ecxel 2016. für Mac. amac-buch Verlag

Anton Ochsenkühn. amac BUCH VERLAG. Ecxel 2016. für Mac. amac-buch Verlag Anton Ochsenkühn amac BUCH VERLAG Ecxel 2016 für Mac amac-buch Verlag 2 Word-Dokumentenkatalog! Zudem können unterhalb von Neu noch Zuletzt verwendet eingeblendet werden. Damit hat der Anwender einen sehr

Mehr

Nicht kopieren. Der neue Report von: Stefan Ploberger. 1. Ausgabe 2003

Nicht kopieren. Der neue Report von: Stefan Ploberger. 1. Ausgabe 2003 Nicht kopieren Der neue Report von: Stefan Ploberger 1. Ausgabe 2003 Herausgeber: Verlag Ploberger & Partner 2003 by: Stefan Ploberger Verlag Ploberger & Partner, Postfach 11 46, D-82065 Baierbrunn Tel.

Mehr

Anleitung zur Erstellung von Serienbriefen (Word 2003) unter Berücksichtigung von Titeln (wie Dr., Dr. med. usw.)

Anleitung zur Erstellung von Serienbriefen (Word 2003) unter Berücksichtigung von Titeln (wie Dr., Dr. med. usw.) Seite 1/7 Anleitung zur Erstellung von Serienbriefen (Word 2003) unter Berücksichtigung von Titeln (wie Dr., Dr. med. usw.) Hier sehen Sie eine Anleitung wie man einen Serienbrief erstellt. Die Anleitung

Mehr

1. Adressen für den Serienversand (Briefe Katalogdruck Werbung/Anfrage ) auswählen. Die Auswahl kann gespeichert werden.

1. Adressen für den Serienversand (Briefe Katalogdruck Werbung/Anfrage ) auswählen. Die Auswahl kann gespeichert werden. Der Serienversand Was kann man mit der Maske Serienversand machen? 1. Adressen für den Serienversand (Briefe Katalogdruck Werbung/Anfrage ) auswählen. Die Auswahl kann gespeichert werden. 2. Adressen auswählen,

Mehr

Das Festkomitee hat die Abi-Seite neu konzipiert, die nun auf einem (gemieteten) Share Point Server

Das Festkomitee hat die Abi-Seite neu konzipiert, die nun auf einem (gemieteten) Share Point Server Hallo Leute Das Festkomitee hat die Abi-Seite neu konzipiert, die nun auf einem (gemieteten) Share Point Server (= echtes - zeug ) liegt! Die neue Form hat insbesondere folgende Vorteile: Du bekommst einen

Mehr

Einführung in Powerpoint M. Hasler 2010. Wie erstelle ich eine Präsentation mit Powerpoint? - Eine Kurzanleitung

Einführung in Powerpoint M. Hasler 2010. Wie erstelle ich eine Präsentation mit Powerpoint? - Eine Kurzanleitung Wie erstelle ich eine Präsentation mit Powerpoint? - Eine Kurzanleitung 1 Als erstes musst du wissen, was du präsentieren willst logisch - sonst bleiben deine Folien ohne Inhalt. Vielleicht willst du die

Mehr

1. Standortbestimmung

1. Standortbestimmung 1. Standortbestimmung Wer ein Ziel erreichen will, muss dieses kennen. Dazu kommen wir noch. Er muss aber auch wissen, wo er sich befindet, wie weit er schon ist und welche Strecke bereits hinter ihm liegt.

Mehr

Handbuch zur Anlage von Turnieren auf der NÖEV-Homepage

Handbuch zur Anlage von Turnieren auf der NÖEV-Homepage Handbuch zur Anlage von Turnieren auf der NÖEV-Homepage Inhaltsverzeichnis 1. Anmeldung... 2 1.1 Startbildschirm... 3 2. Die PDF-Dateien hochladen... 4 2.1 Neue PDF-Datei erstellen... 5 3. Obelix-Datei

Mehr

Anleitung zum erfassen von Last Minute Angeboten und Stellenangebote

Anleitung zum erfassen von Last Minute Angeboten und Stellenangebote Anleitung zum erfassen von Last Minute Angeboten und Stellenangebote Zweck dieser Anleitung ist es einen kleinen Überblick über die Funktion Last Minute auf Swisshotelportal zu erhalten. Für das erstellen

Mehr

Anleitung: Webspace-Einrichtung

Anleitung: Webspace-Einrichtung Anleitung: Webspace-Einrichtung Inhaltsverzeichnis 1 Webspace für alle Rechenzentrumsnutzer(innen) 1 2 Login 2 2.1 Im Terminalraum / Mit Putty von zu Hause aus..................... 2 2.2 Auf unixartigen

Mehr

2. Im Admin Bereich drücken Sie bitte auf den roten Button Webseite bearbeiten, sodass Sie in den Bearbeitungsbereich Ihrer Homepage gelangen.

2. Im Admin Bereich drücken Sie bitte auf den roten Button Webseite bearbeiten, sodass Sie in den Bearbeitungsbereich Ihrer Homepage gelangen. Bildergalerie einfügen Wenn Sie eine Vielzahl an Bildern zu einem Thema auf Ihre Homepage stellen möchten, steht Ihnen bei Schmetterling Quadra das Modul Bildergalerie zur Verfügung. Ihre Kunden können

Mehr

1 topologisches Sortieren

1 topologisches Sortieren Wolfgang Hönig / Andreas Ecke WS 09/0 topologisches Sortieren. Überblick. Solange noch Knoten vorhanden: a) Suche Knoten v, zu dem keine Kante führt (Falls nicht vorhanden keine topologische Sortierung

Mehr

Computerstammtisch Tegernau, Tutorial Grundlagen, Dateioperationen, Datensicherung (Screenshots und Erläuterungen beziehen sich auf Windows 7)

Computerstammtisch Tegernau, Tutorial Grundlagen, Dateioperationen, Datensicherung (Screenshots und Erläuterungen beziehen sich auf Windows 7) Computerstammtisch Tegernau, Tutorial Grundlagen, Dateioperationen, Datensicherung (Screenshots und Erläuterungen beziehen sich auf Windows 7) Wir haben beim letzten Mal gehört, wie wichtig es ist, dass

Mehr

Bedienungsanleitung Anlassteilnehmer (Vereinslisten)

Bedienungsanleitung Anlassteilnehmer (Vereinslisten) Bedienungsanleitung Anlassteilnehmer Dieses Programm ist speziell für Vereine entworfen. Es ist lizenzfrei verwendbar und gratis. Das Programm ist mit Excel 2010 erstellt worden und enthält VBA Programmierungen,

Mehr

TESTEN SIE IHR KÖNNEN UND GEWINNEN SIE!

TESTEN SIE IHR KÖNNEN UND GEWINNEN SIE! 9 TESTEN SIE IHR KÖNNEN UND GEWINNEN SIE! An den SeniorNETclub 50+ Währinger Str. 57/7 1090 Wien Und zwar gleich in doppelter Hinsicht:!"Beantworten Sie die folgenden Fragen und vertiefen Sie damit Ihr

Mehr

Anleitung zur Erstellung einer Gefährdungsbeurteilung

Anleitung zur Erstellung einer Gefährdungsbeurteilung Anleitung zur Erstellung einer Gefährdungsbeurteilung 1 Vorbereiten der Gefährdungsbeurteilung 1.1 Richten Sie mit Hilfe des Windows-Explorers (oder des Windows-Arbeitsplatzes) einen neuen Ordner ein,

Mehr

Aufklappelemente anlegen

Aufklappelemente anlegen Aufklappelemente anlegen Dieses Dokument beschreibt die grundsätzliche Erstellung der Aufklappelemente in der mittleren und rechten Spalte. Login Melden Sie sich an der jeweiligen Website an, in dem Sie

Mehr

Programme im Griff Was bringt Ihnen dieses Kapitel?

Programme im Griff Was bringt Ihnen dieses Kapitel? 3-8272-5838-3 Windows Me 2 Programme im Griff Was bringt Ihnen dieses Kapitel? Wenn Sie unter Windows arbeiten (z.b. einen Brief schreiben, etwas ausdrucken oder ein Fenster öffnen), steckt letztendlich

Mehr

NOXON Connect Bedienungsanleitung Manual

NOXON Connect Bedienungsanleitung Manual Software NOXON Connect Bedienungsanleitung Manual Version 1.0-03/2011 1 NOXON Connect 2 Inhalt Einführung... 4 Die Installation... 5 Der erste Start.... 7 Account anlegen...7 Hinzufügen eines Gerätes...8

Mehr

Durchführung der Datenübernahme nach Reisekosten 2011

Durchführung der Datenübernahme nach Reisekosten 2011 Durchführung der Datenübernahme nach Reisekosten 2011 1. Starten Sie QuickSteuer Deluxe 2010. Rufen Sie anschließend über den Menüpunkt /Extras/Reisekosten Rechner den QuickSteuer Deluxe 2010 Reisekosten-Rechner,

Mehr

Systeme 1. Kapitel 6. Nebenläufigkeit und wechselseitiger Ausschluss

Systeme 1. Kapitel 6. Nebenläufigkeit und wechselseitiger Ausschluss Systeme 1 Kapitel 6 Nebenläufigkeit und wechselseitiger Ausschluss Threads Die Adressräume verschiedener Prozesse sind getrennt und geschützt gegen den Zugriff anderer Prozesse. Threads sind leichtgewichtige

Mehr

Whitepaper. Produkt: combit address manager/combit Relationship Manager. Erweitertes David AddIn für Tobit. combit GmbH Untere Laube 30 78462 Konstanz

Whitepaper. Produkt: combit address manager/combit Relationship Manager. Erweitertes David AddIn für Tobit. combit GmbH Untere Laube 30 78462 Konstanz combit GmbH Untere Laube 30 78462 Konstanz Whitepaper Produkt: combit address manager/combit Relationship Manager Erweitertes David AddIn für Tobit Erweitertes David AddIn für Tobit - 2 - Inhalt Bedienung

Mehr

Informatik Grundlagen, WS04, Seminar 13

Informatik Grundlagen, WS04, Seminar 13 Informatik Grundlagen, WS04, Seminar 13 Informatik Informatik Grundlagen, Seminar 13 WS04 1 Was wir heute besprechen Nachbesprechen von Übungsblatt 11 Rekursion Grundprinzipien Übung Besprechung Übungsblatt

Mehr

4. BEZIEHUNGEN ZWISCHEN TABELLEN

4. BEZIEHUNGEN ZWISCHEN TABELLEN 4. BEZIEHUNGEN ZWISCHEN TABELLEN Zwischen Tabellen können in MS Access Beziehungen bestehen. Durch das Verwenden von Tabellen, die zueinander in Beziehung stehen, können Sie Folgendes erreichen: Die Größe

Mehr

Barcodedatei importieren

Barcodedatei importieren Barcodedatei importieren Inhaltsverzeichnis 1 Schnittstelle Barcodedatei importieren... 2 1.1 Funktion... 2 1.2 Konfiguration... 2 1.2.1 Lizenz... 2 1.2.2 Einstellungen... 2 1.2.3 Vorarbeiten... 3 1.2.3.1

Mehr

Internet online Update (Mozilla Firefox)

Internet online Update (Mozilla Firefox) Um Ihr Consoir Beta immer schnell und umkompliziert auf den aktuellsten Stand zu bringen, bieten wir allen Kunden ein Internet Update an. Öffnen Sie Ihren Mozilla Firefox und gehen auf unsere Internetseite:

Mehr

Windows 7 Ordner und Dateien in die Taskleiste einfügen

Windows 7 Ordner und Dateien in die Taskleiste einfügen WI.005, Version 1.1 07.04.2015 Kurzanleitung Windows 7 Ordner und Dateien in die Taskleiste einfügen Möchten Sie Ordner oder Dateien direkt in die Taskleiste ablegen, so ist das nur mit einem Umweg möglich,

Mehr

Grundlagen der Theoretischen Informatik, SoSe 2008

Grundlagen der Theoretischen Informatik, SoSe 2008 1. Aufgabenblatt zur Vorlesung Grundlagen der Theoretischen Informatik, SoSe 2008 (Dr. Frank Hoffmann) Lösung von Manuel Jain und Benjamin Bortfeldt Aufgabe 2 Zustandsdiagramme (6 Punkte, wird korrigiert)

Mehr

Serienbrieferstellung in Word mit Kunden-Datenimport aus Excel

Serienbrieferstellung in Word mit Kunden-Datenimport aus Excel Sehr vielen Mitarbeitern fällt es schwer, Serienbriefe an Kunden zu verschicken, wenn sie die Serienbrieffunktion von Word nicht beherrschen. Wenn die Kunden mit Excel verwaltet werden, genügen nur ein

Mehr

Dokumentation IBIS Monitor

Dokumentation IBIS Monitor Dokumentation IBIS Monitor Seite 1 von 16 11.01.06 Inhaltsverzeichnis 1. Allgemein 2. Installation und Programm starten 3. Programmkonfiguration 4. Aufzeichnung 4.1 Aufzeichnung mitschneiden 4.1.1 Inhalt

Mehr

Benutzung der Avid Liquid Edition Schnittplätze an der Universität Innsbruck

Benutzung der Avid Liquid Edition Schnittplätze an der Universität Innsbruck Benutzung der Avid Liquid Edition Schnittplätze an der Universität Innsbruck Diese Anleitung muss bei jedem Start von Avid Liquid Edition befolgt werden, da sonst das Schneiden der Videos nicht möglich

Mehr

Daten-Synchronisation zwischen dem ZDV-Webmailer und Outlook (2002-2007) Zentrum für Datenverarbeitung der Universität Tübingen

Daten-Synchronisation zwischen dem ZDV-Webmailer und Outlook (2002-2007) Zentrum für Datenverarbeitung der Universität Tübingen Daten-Synchronisation zwischen dem ZDV-Webmailer und Outlook (2002-2007) Zentrum für Datenverarbeitung der Universität Tübingen Inhalt 1. Die Funambol Software... 3 2. Download und Installation... 3 3.

Mehr

Spielmaterial. Hallo! Ich bin der kleine AMIGO und zeige euch, wie dieses Spiel funktioniert. Viel Spaß! von Liesbeth Bos

Spielmaterial. Hallo! Ich bin der kleine AMIGO und zeige euch, wie dieses Spiel funktioniert. Viel Spaß! von Liesbeth Bos Kissenschlacht_Regel.qxp:Layout 1 19.05.2010 12:00 Uhr Seite 1 Hallo! Ich bin der kleine AMIGO und zeige euch, wie dieses Spiel funktioniert. Viel Spaß! von Liesbeth Bos Spieler: 2 4 Personen Alter: ab

Mehr

Zählen von Objekten einer bestimmten Klasse

Zählen von Objekten einer bestimmten Klasse Zählen von Objekten einer bestimmten Klasse Ziel, Inhalt Zur Übung versuchen wir eine Klasse zu schreiben, mit der es möglich ist Objekte einer bestimmten Klasse zu zählen. Wir werden den ++ und den --

Mehr

1. Einführung. 2. Alternativen zu eigenen Auswertungen. 3. Erstellen eigener Tabellen-Auswertungen

1. Einführung. 2. Alternativen zu eigenen Auswertungen. 3. Erstellen eigener Tabellen-Auswertungen 1. Einführung Über die Tabellen-Auswertungen können Sie eigene Auswertungen nach Ihren Wünschen erstellen. Diese Auswertungen werden immer anhand der aktuellen Daten aus orgamax ermittelt, Sie können also

Mehr

FuxMedia Programm im Netzwerk einrichten am Beispiel von Windows 7

FuxMedia Programm im Netzwerk einrichten am Beispiel von Windows 7 FuxMedia Programm im Netzwerk einrichten am Beispiel von Windows 7 Die Installation der FuxMedia Software erfolgt erst NACH Einrichtung des Netzlaufwerks! Menüleiste einblenden, falls nicht vorhanden Die

Mehr

Handbuch für Redakteure

Handbuch für Redakteure Handbuch für Redakteure Erste Schritte... 1 Artikel erstellen... 2 Artikelinhalt bearbeiten... 3 Artikel bearbeiten... 3 Grunddaten ändern... 5 Weitere Artikeleigenschaften... 5 Der WYSIWYG-Editor... 6

Mehr

SOFiSTiK AG 2011. Installationsanleitung

SOFiSTiK AG 2011. Installationsanleitung SOFiSTiK AG 2011 Installationsanleitung Copyright SOFiSTiK AG, D-85764 Oberschleißheim, 1990-2011 Dieses Handbuch ist urheberrechtlich geschützt. Kein Teil darf ohne schriftliche Genehmigung der SO- FiSTiK

Mehr