Technische Praxis der Computersysteme 1

Größe: px
Ab Seite anzeigen:

Download "Technische Praxis der Computersysteme 1"

Transkript

1 Technische Praxis der Computersysteme 1 7. Shell-Programmierung Thomas Leitner <thomas.leitner@univie.ac.at> Fakultät für Mathematik, Universität Wien Wintersemester 2012 Letzte Änderung: :46: Inhalt Aufbau Shell-Skript Tests Eingabe- und Ausgabebefehle Verzweigungen Schleifen Funktionen Hilfreiche (Bash-)Befehle Shell-Skript Ein Shell-Skript ist einen Textdatei, die von der Shell interpretiert wird. Um ein möglichst portables Shell-Skript zu schreiben, darf man nur die POSIX-konforme Syntax und die POSIX-konformen Befehle verwenden. Da aber die Bash die Standardshell der meisten Linux-Distributionen und /bin/sh zumeist ein Link auf /bin/bash ist, ist es in den meisten Fällen okay, auch spezielle Bash-Befehle zu verwenden. Alles, was man auf der Kommandozeile eingeben kann, kann man auch in einem Skript verwenden. Umgekehrt gilt das gleiche. Daher ist es möglich, zuerst direkt auf der Kommandozeile Befehle zu kombinieren und auszuprobieren und später daraus ein Skript zu machen. Eine gute Dokumentation, die kurz und bündig ist, aber viele Beispiele umfasst, ist der Advanced Bash-Scripting Guide. Shell-Skript - Aufbau In einem Shell-Skript werden meist überwiegend Shell-Befehle benutzt. Zu den Shell-Befehlen gehören unter anderem: Variablenzuweisungen Tests (test, [... ], [[... ]]) Verzweigungen (if, case) Schleifen (for, while, until) Ein- und Ausgabebefehle (read, echo, printf) Funktionen (function) Darüber hinaus können natürlich auch alle anderen Programme wie head, tail, cut, verwendet werden. Um ein Skript ausführbar zu machen, muss das Executable-Bit auf die Datei gesetzt werden und in der ersten Zeile muss ein entsprechender Shebang stehen (für portable Skripte #!/bin/sh, sonst #!/bin/bash). Oder man ruft das Skript direkt mit Hilfe der Bash auf, also bash skript.sh. Shell-Skript - Stellungsparameter Einem Shell-Skript können beim Aufruf wie jedem anderen Befehl Argumente übergeben werden. Die Shell stellt für das Arbeiten mit den Argumenten die Stellungsparameter sowie einige spezielle Parameter zur Verfügung. $1, $2, $3, sind die Stellungsparameter. In $1 ist das erste Argument, in $2 das zweite Argument und so weiter. Man kann ihnen keinen Wert direkt zuordnen (nur über den Bash-Befehlset). Von den speziellen Parametern sind $*, $@ und $# für das Arbeiten mit den Stellungsparametern wichtig. Shell-Skript - Spezielle Parameter Den sogenannten speziellen Parametern kann kein Wert zugewiesen werden und sie werden von Shell speziell behandelt:

2 $*: Expandiert zu den Stellungsparametern. Werden doppelte Anführungszeichen benutzt ("$*"), so wird zu einem einzigen Wort expandiert, die Werte der Stellungsparameter sind durch das erste Zeichen von $IFS (normalerweise das Leerzeichen) getrennt (also "$1 $2 $3..."). Expandiert zu den Stellungsparametern. Werden doppelte Anführungszeichen benutzt so expandiert jeder Parameter zu einem eigenen Wort (also "$1" "$2" "$3"...). $#: Expandiert zur Anzahl der Stellungsparameter. $?: Expandiert zum Rückgabewert des letzten, im Vordergrund ausgeführten Befehls. $$: Expandiert zur PID der Shell (auch wenn in einer Subshell verwendet). $!: Expandiert zur PID des letzten, im Hintergrund gestarteten Befehls. $0: Expandiert zum Namen der Shell oder des Shell-Skripts. Shell-Skript - Befehle für Stellungsparameter (set, shift) set - Setzt oder löscht Shell-Optionen bzw. setzt Stellungsparameter. Wir gehen nicht näher auf die Shell-Optionen ein. Syntax: set -- Parameter1 Parameter2... $ set -- Param1 "Param 2" $ echo $1 Param1 $ echo $2 Param 2 shift - Entfernt die ersten N Stellungsparameter und rückt die anderen nach. Falls kein Argument angegeben ist, wird als Anzahl N=1 benutzt. Das heißt, der Parameter $N+1 wird zu $1, $N+2 wird zu $2 und so weiter. Hat als Rückgabewert 0, wenn N nicht negativ und kleiner als $# ist. $ set -- Param1 "Param 2" "Param 3" $ echo $1 Param1 $ shift 2 $ echo $1 Param 3 Shell-Skript - Beispiele Hier ein Beispiel für ein einfaches Shell-Skript: #!/bin/sh # # Wir werden jetzt einige Stellungsparameter und spezielle Parameter testen. # Dazu dieses Skript mit mindestens drei Argumenten aufrufen. echo Alle Parameter mit \$*: \""$*"\" echo Alle Parameter mit \$@: \""$*"\" echo Anzahl der Parameter: $# echo $1 echo $2 echo $3 shift 3 echo Anzahl der Parameter: $# echo $1 $2 $3 In der ersten Zeile ist der Shebang. Dieser muss immer vorhanden sein! Danach folgen drei Zeilen mit Kommentaren (Shell-Kommentare beginnen mit dem Hash-Zeichen # und gehen dann bis zum Zeilenende). Anschließend sind die auszuführenden Befehle. Tests - Befehle Die Bash besitzt drei verschiedene Möglichkeiten, um Tests auszuführen:

3 Tests 1 test: Das ist ein eingbauter Bash-Befehl, der es ermöglicht, Zeichenketten oder Zahlen miteinander zu vergleichen bzw. Dateien zu überprüfen. Üblicherweise gibt es auch einen eigenständigen Befehl (in Ubuntu /usr/bin/test). [... ]: Das ist nur eine andere Syntax für den test-befehl. Man muss dabei die schließende Klammer immer zwingend angeben. Auch dafür gibt es einen eigenständigen Befehl (in Ubuntu /usr/bin/[). [[... ]]: Das ist eine Bash-Erweiterung der obigen Syntax, die die Verwendung angenehmer macht. Dieser Befehl ist eigentlich ein reserviertes Wort der Bash und wird daher von der Bash etwas anders verarbeitet als normale Befehle. Daher muss man Operatoren wie < und && nicht maskieren. Abgesehen davon können die gleichen Tests wie bei den obigen Varianten verwendet werden. Bezüglich der Unterschiede der drei Möglichkeiten siehe auch BashFAQ/031. Verwendet wird wie üblich der Rückgabewert des Befehls: 0 (wahr) bzw. 1 (falsch). Hier eine Auflistung der wichtigsten Tests: Tests 2 Dateiexistenz und Dateitypen: -e Datei Existiert die Datei? -d Datei Existiert die Datei und ist sie ein Verzeichnis? -f Datei Existiert die Datei und ist sie eine normale Datei? -L Datei Existiert die Datei und ist sie ein symbolischer Link? -s Datei Existiert die Datei und ist sie nicht leer? Zeichenketten: -z String Wahr, falls die Länge der Zeichenkette 0 ist. -n String Wahr, falls die Länge der Zeichenkette nicht 0 ist. String1 = String2 Wahr, falls die beiden Zeichenketten gleich sind. String1!= String2 Wahr, falls die beiden Zeichenketten nicht gleich sind. String1 < String2 Wahr, falls String1 lexikographisch vor String2 kommt. String1 > String2 Wahr, falls String1 lexikographisch nach String2 kommt. Arithmetische Operatoren: Syntax: Argument1 OPERATOR Argument2 -eq Wahr, falls Argument1 gleich Argument2 ist. -ne Wahr, falls Argument1 ungleich Argument2 ist. -lt Wahr, falls Argument1 kleiner Argument2 ist. -le Wahr, falls Argument1 kleiner gleich Argument2 ist. -gt Wahr, falls Argument1 größer Argument2 ist. -ge Wahr, falls Argument1 größer gleich Argument2 ist. Für einen Übersicht aller möglichen Tests siehe CONDITIONAL EXPRESSIONS in der Manpage der Bash oder help test. Nützlich für Tests sind auch folgende zwei Bash-Befehle: Tests - Beispiele true Hat als Rückgabewert immer 0 (wahr) false Hat als Rückgabewert immer 1 (falsch) Überprüfen, ob eine Datei existiert und eine reguläre Datei ist: $ [[ -f Datei ]] && echo ja echo nein Vergleichen von Zeichenketten: $ STR1="" $ STR2="hallo" $ STR3="HALLO" $ [ $STR1 = "" ] && echo ja echo nein -bash: [: =: unary operator expected nein

4 $ [ "$STR1" = "" ] && echo ja echo nein ja $ [[ "$STR1" = "" ]] && echo ja echo nein ja $ [[ $STR2 < $STR3 ]] && echo ja echo nein ja Ausgabebefehle (echo, printf) echo - Gibt die Argumente aus. Optionen: -n Keinen Zeilenumbruch ausgeben, -e Auswertung von einigen maskierten Zeichen erlauben (z.b. \n neue Zeile, \r Wagenrücklauf, \t Tabulator), -E explizit die Auswertung von maskierten Zeichen unterdrücken. Der Rückgabewert ist immer 0 außer ein Schreibfehler tritt auf. $ echo a b c a b c $ echo -e "a\tb" a b printf - Formatiert die Argumente basierend auf einem Format. Syntax: printf [-v Variable] Format [Argumente] Option -v Variable die Ausgabe wird der Variablen zugewiesen und nicht auf der Standardausgabe ausgegeben Format ist eine Formatspezifikation gemäß man 1 printf. $ printf "%s %.2f\n" Hallo.3236 Hallo.33 $ printf "%7.2f\n" Eingabebefehle (read) read - Liest eine Zeile von der Standardeingabe und teilt sie in Felder. Syntax: read [Optionen] [Name...] Optionen: -p Prompt einen Eingabeprompt anzeigen (ohne Zeilenumbruch), -s Eingabe vom Terminal nicht ausgeben (z.b. für Passworteingabe), -t Timeout nach einer bestimmten Anzahl von Sekunden die Eingabe abbrechen. Die eingelesenen Felder werden den angegebenen Variablen zugewiesen, das letzte Feld bekommt alles, was übrig bleibt. Wird kein Variablenname angegeben, wird die Zeile in der Variablen REPLY gespeichert. $ echo "a b c" read a b c $ echo $a$b$c $ echo "a b c" (read a b c && echo $a$b$c) abc $ read -p "Bitte um Eingabe: " -t VAR && echo $VAR echo Abbruch # keine Eingabe Bitte um Eingabe: Abbruch $ read -p "Bitte um Eingabe: " -t VAR && echo $VAR echo Abbruch Bitte um Eingabe: Hallo du Hallo du if Verzweigung if Liste; then Liste; [ elif Liste; then Liste; ]... [ else Liste; ] fi Eine if-verzweigung wird in Wenn - dann -Fällen verwendet, d.h. wenn man auf Grund eines Rückgabewerts den Programmablauf entweder in die eine oder in die andere Richtung lenken will. Eine Liste ist dabei eine Liste von Befehlen wie in Arbeiten mit der Bash definiert. Die Listen bei if und elif entsprechen den Verzweigungsbedingungen. Die if Liste wird ausgeführt und wenn der Rückgabewert 0 ist, wird die then Liste ausgeführt. Ansonsten wird jede (optionale) elif Liste der Reihe nach ausgeführt und wenn der Rückgabewert 0 ist, die zugehörige then Liste ausgeführt und der Befehl beendet. Falls das auch nicht der Fall ist und es eine else Liste gibt, wird diese ausgeführt.

5 Der Rückgabewert ist der Rückgabewert des letzten ausgeführten Befehls oder 0, falls keine Bedingung wahr war. if Verzweigung - Beispiel Hinweis: Eine Liste kann auch durch einen Zeilenumbruch abgeschlossen werden. Das erlaubt eine schönere Darstellung in einem Shell-Skript. Als Beispiel werden wir ein Skript schreiben, dass von Fahrenheit in Celsius umrechnet und umgekehrt. Das Skript braucht zwei Argumente: Das erste Argument gibt die Skala für die Temperatur an (Fahrenheit oder Celsius) und das zweite Argument die Grad. Folgende Schritte braucht man für die Berechnung von Celsius aus Fahrenheit: 1. Die Temperatur in Fahrenheit nehmen und davon 32 abziehen. 2. Das Ergebnis durch 1.8 dividieren. 3. Das Ergebnis ist die Temperatur in Celsius. In Formeln zusammengefasst: C = ( F - 32) * /9 F = C * 9/ + 32 case Verzweigung case Wort in [Muster [ Muster ]... ) Liste ;; ]... esac Eine case-verzweigung wird verwendet, wenn es für ein Wort mehrere mögliche Werte gibt und abhängig davon bestimmte Befehle ausgeführt werden sollen. Das Wort und die Muster werden expandiert und es wird überprüft, ob das expandiert Wort auf ein expandiertes Muster nach den Regeln der Pfadexpansion (siehe Arbeiten mit der Bash ) passt. Falls ein Muster passt, wird die entsprechende Liste ausgeführt und kein weiteres Muster wird überprüft (wenn ;; am Ende der Liste benutzt wird, es gibt auch noch andere Möglichkeiten, die wir hier nicht behandeln). Der Rückgabewert ist 0, wenn kein Muster gepasst hat oder sonst der Rückgabewert des letzten ausgeführten Befehls der Liste. Wir schreiben nun das vorhin erstelle Programm um und verwenden jetzt case anstatt von if. for Schleife for Name [in Wörter... ] ; do Liste ; done for (( Ausdruck1 ; Ausdruck2 ; Ausdruck3 )) ; do Liste ; done Eine for-schleife wird verwendet, um Befehle eine bestimmte Anzahl an Durchläufen auszuführen. In der ersten Variante werden die Wörter expandiert. Dann wird die Variable Name der Reihe nach auf die einzelnen Worte gesetzt und jedes Mal die Liste an Befehlen ausgeführt. Wenn die Expansion der Wörter nichts ergibt, wird als Rückgabewert 0 zurückgegeben, ansonsten ist der Rückgabewert des letzten ausgeführten Befehls. In der zweiten Variante wird zuerst Ausdruck1 arithmetische ausgewertet. Ausdruck2 wird solange ausgewertet, bis der Wert 0 herauskommt. Jedes Mal, wenn bei Ausdruck2 ein Wert ungleich 0 herauskommt, wird die Liste ausgeführt und Ausdruck arithmetisch ausgewertet. Der Rückgabewert ist der Rückgabewert the letzten Befehls in der Liste oder 1, falls einer der Ausdrücke ungültig sein sollte. for Schleife - Beispiel Als Beispiel werden wir ein Skript schreiben, dass alle Benutzernamen und IDs der Benutzer, die in einer Datei definiert sind, auflistet. Das Skript braucht als Argument die Datei, von der es die Daten lesen soll. Die Datei muss dabei dem Format der Datei /etc/passwd folgen. while/until Schleife

6 while Liste1; do Liste2; done until Liste1; do Liste2; done Die while-schleife dient zur Ausführung von Befehlen, solange eine Bedingung wahr ist. Die until-schleife dient zur Ausführung von Befehlen, bis eine Bedingung wahr ist. Bei der while-schleife werden die Befehle in Liste2 wiederholt ausgeführt, solange der letzte Befehl in Liste1 einen Rückgabewert von 0 hat. Bei der until-schleife werden die Befehle in Liste2 solange ausgeführt, bis der letzte Befehl in Liste1 einen Rückgabewert von 0 hat. Der Rückgabewert ist in beiden Fällen der Rückgabewert des letzten ausgeführten Befehls der Liste2, oder 0, falls von Liste2 kein Befehl ausgeführt worden ist. Wir schreiben nun das vorhin erstelle Programm um und verwenden jetzt while anstatt von for. Funktionen name () Verbundbefehl function name [()] Verbundbefehl Eine Shell-Funktion erlaubt das Zuweisen eines Namens zu einem Verbundbefehl und dessen Aufruf über diesen Namen (wie einen einfachen Befehl). Die Verwendung des reservierten Worts function ist optional; falls es nicht verwendet wird, muss das Klammernpaar angegeben werden. Ruft man eine Funktion auf, so werden innerhalb der Funktion die übergebenen Argumente den Stellungsparametern temporär zugewiesen. Der Rückgabewert einer Funktion, wenn sie ausgeführt wird, ist der Rückgabewert des letzten ausgeführten Befehls. Funktionen - Beispiele Jeder Verbundbefehl ist möglich, normalerweise verwendet man {... ; }, damit Änderungen an Variablen innerhalb der Funktion auch im Aufrufkontext wirksam sind. $ A= $ testit () (A=7; echo Innerhalb: $A) $ echo $A; testit; echo $A Innerhalb: 7 $ testit () { A=7; echo Innerhalb: $A ;} $ echo $A; testit; echo $A Innerhalb: 7 7 Das Verwenden von Stellungsparametern funktioniert wie üblich: $ function add { echo Parameter: $@; echo $(($1 + $2)); } $ add 4 6 Parameter: Hilfreiche Befehle (alias, unalias, unset) alias - Definiert Aliase oder zeigt sie an. Bash-interner Befehl. Wird benutzt, um oft eingegebenen Befehlen kürzere Namen zuzuordnen oder um Standardoptionen automatisch zu setzen. $ alias ls alias ls='ls --color=auto' $ alias z='ls -alf --color=auto' unalias - Entfernt Aliase. Bash-interner Befehl.

7 $ unalias z $ alias z -bash: alias: z: not found unset - Variablen und Funktionen löschen. Löscht die angegebenen Variablen oder Funktionen. $ VAR=; echo $VAR $ unset VAR; echo $VAR Hilfreiche Befehle (source, export) source - Führt Befehle von einer Datei in der aktuellen Shell aus. Syntax: source Dateiname [Argumente] oder. Dateiname [Argumente] Wird z.b. von Ubuntu für das Setzen von Standardwerten für Startskripte benutzt. $ echo "$ACTIVE_CONSOLES" $. /etc/default/console-setup $ echo "$ACTIVE_CONSOLES" /dev/tty[1-6] export - Markiert Variablen für den automatischen Export an Subprozesse. Wenn eine Variable definiert wird, ist sie nur für die aktuelle Shell und Subshells sichtbar. Erst durch das Markieren mittels export stehen Variablen auch ausgeführten Befehlen zur Verfügung. Mit der Option -n kann man das Exportieren rückgängig machen. $ VAR=Wert ; bash -c 'echo $VAR' $ export VAR ; bash -c 'echo $VAR' Wert $ export -n VAR ; bash -c 'echo $VAR' Hilfreiche Befehle (sleep, timeout) sleep - Wartet für die angegebene Anzahl an Sekunden. Man kann auch Suffixe verwenden: s für Sekunden (default), m für Minuten, h für Stunden und d für Tage. Die verwendete Zahl kann auch Kommastellen beinhalten. $ date +"%S.%N"; sleep 0.0m; date +"%S.%N" timeout - Bricht einen Befehl nach einer bestimmten Anzahl an Sekunden ab. Suffixe wie bei sleep möglich (Sekunden sind default). Optionen: -s Signal legt das Signal fest (default TERM), das an den Befehl geschickt werden soll. Der Rückgabewert ist der Rückgabewert des Befehls, oder 124, falls der Befehl abgebrochen wurde. $ timeout 2 sleep 3 $ echo $? 124 Copyright und Lizenz Copyright: Thomas Leitner thomas.leitner@univie.ac.at Basiert teilweise auf den Folien von Harald Schilly harald.schilly@univie.ac.at Lizenz: Creative Commons CC BY-NC-SA Namensnennung-Keine kommerzielle Nutzung-Weitergabe unter gleichen Bedingungen 3.0 Österreich. -

Alles, was man auf der Kommandozeile eingeben kann, kann man auch in einem Skript verwenden. Umgekehrt gilt das gleiche.

Alles, was man auf der Kommandozeile eingeben kann, kann man auch in einem Skript verwenden. Umgekehrt gilt das gleiche. Foliensatz 7 Shell-Programmierung Inhalt Aufbau Shell-Skript Tests Eingabe- und Ausgabebefehle Verzweigungen Schleifen Funktionen Hilfreiche (Bash-)Befehle Shell-Skript Ein Shell-Skript ist einen Textdatei,

Mehr

Bash-Skripting Linux-Kurs der Unix-AG

Bash-Skripting Linux-Kurs der Unix-AG Bash-Skripting Linux-Kurs der Unix-AG Sebastian Weber 13.06.2012 Was ist ein Bash-Skript? Skript muss mit chmod +x ausführbar gemacht sein Aneinanderreihung von Befehlen normale Befehle nutzbar Sebastian

Mehr

Bash-Skripting Linux-Kurs der Unix-AG

Bash-Skripting Linux-Kurs der Unix-AG Bash-Skripting Linux-Kurs der Unix-AG Sebastian Weber 07.01.2013 Was ist ein Bash-Skript? Skript muss mit chmod +x ausführbar gemacht sein Aneinanderreihung von Befehlen normale Befehle nutzbar Sebastian

Mehr

Shell-Scripting Linux-Kurs der Unix-AG

Shell-Scripting Linux-Kurs der Unix-AG Shell-Scripting Linux-Kurs der Unix-AG Andreas Teuchert 8. Juli 2014 Was ist ein Shell-Script? Aneinanderreihung von Befehlen, die ausgeführt werden Bedingte und wiederholende Ausführung möglich Nützlich

Mehr

Shell-Scripting Linux-Kurs der Unix-AG

Shell-Scripting Linux-Kurs der Unix-AG Shell-Scripting Linux-Kurs der Unix-AG Benjamin Eberle 1. Februar 2016 Was ist ein Shell-Script? Aneinanderreihung von Befehlen, die ausgeführt werden Bedingte und wiederholende Ausführung möglich Nützlich

Mehr

Shell-Scripting Linux-Kurs der Unix-AG

Shell-Scripting Linux-Kurs der Unix-AG Shell-Scripting Linux-Kurs der Unix-AG Benjamin Eberle 6. Juli 2016 Was ist ein Shell-Script? Aneinanderreihung von Befehlen, die ausgeführt werden Bedingte und wiederholende Ausführung möglich Nützlich

Mehr

Bash-Scripting Linux-Kurs der Unix-AG

Bash-Scripting Linux-Kurs der Unix-AG Bash-Scripting Linux-Kurs der Unix-AG Zinching Dang 02. Juli 2013 Was ist ein Bash-Script? Aneinanderreihung von Befehlen, die ausgeführt werden Bedingte und wiederholende Ausführung möglich Nützlich bei

Mehr

Shell-Scripting Linux-Kurs der Unix-AG

Shell-Scripting Linux-Kurs der Unix-AG Shell-Scripting Linux-Kurs der Unix-AG Andreas Teuchert 31. Januar 2014 Was ist ein Shell-Script? Aneinanderreihung von Befehlen, die ausgeführt werden Bedingte und wiederholende Ausführung möglich Nützlich

Mehr

Übersicht Shell-Scripten

Übersicht Shell-Scripten !!!! Wichtig: Bei Shell-Scripten enden die Zeilen nicht mit einem Strichpunkt!!!! Erste Zeile eines Shell-Scripts: #! /bin/bash Variablen in Shell-Scripts: Variablennamen müssen mit einem Buchstaben beginnen,

Mehr

Vorbemerkung. Allgemeines zu Shell Scripts. Aufruf. Einfaches Beispiel

Vorbemerkung. Allgemeines zu Shell Scripts. Aufruf. Einfaches Beispiel Inhalt: Vorbemerkung...1 Allgemeines zu Shell Scripts...1 Aufruf...1 Einfaches Beispiel...1 Testen eines Shell-Scripts...2 Kommandozeilen-Parameter...2 Prozeßsteuerung...3 Bedingte Ausführung: if...3 Mehrfachentscheidung:

Mehr

Die Shell. Ein Vortrag von Frederik und Michael 1 / 35

Die Shell. Ein Vortrag von Frederik und Michael 1 / 35 Die Shell Ein Vortrag von Frederik und Michael 1 / 35 Die Shell Teil 1 Einleitung Geschichte des Terminals Vergleich von GUI und Konsole Teil 2 Praxis Teil 3 Konzepte und Möglichkeiten der Shell Teil 4

Mehr

Computer & GNU/Linux Einführung Teil 4

Computer & GNU/Linux Einführung Teil 4 Inst. für Informatik [IFI] Computer & GNU/Linux EinführungTeil 4 Simon Haller, Sebastian Stab 1/20 Computer & GNU/Linux Einführung Teil 4 Simon Haller, Sebastian Stabinger, Benjamin Winder Inst. für Informatik

Mehr

Allgemeines. Shell Programmierung Unix. Kommentar. Vorgangsweise. Mag. Thomas Griesmayer

Allgemeines. Shell Programmierung Unix. Kommentar. Vorgangsweise. Mag. Thomas Griesmayer Allgemeines Shell Programmierung Unix Shell Scripts Unix Ein shell script ist eine Textdatei, welche eine Liste von Befehlen (Standard Unix Befehle) beinhaltet. Diese Datei kann durch Aufrufen ausgeführt

Mehr

Linux und Shell-Programmierung Teil 5

Linux und Shell-Programmierung Teil 5 Prof. Dr. Christian Baun Linux und Shell-Programmierung Teil 5 Fachhochschule Frankfurt am Main WS1314 1/44 Linux und Shell-Programmierung Teil 5 Prof. Dr. Christian Baun Fachhochschule Frankfurt am Main

Mehr

Vorlesung Unix-Praktikum

Vorlesung Unix-Praktikum 1/2 Vorlesung 6. - und Rechnerbetriebsgruppe Technische Fakultät Universität Bielefeld 23. November 2015 2/2 Willkommen zur sechsten Vorlesung Was gab es beim letzten Mal? Dateiverwaltung Aliase echo und

Mehr

Shell-Programmierung. von Rolf Schmidt für. LUG Frankfurt

Shell-Programmierung. von Rolf Schmidt für. LUG Frankfurt Shell-Programmierung von Rolf Schmidt für LUG Frankfurt Ziel des Vortrags Skripten für Einsteiger Arten der Shell-Programmierung Möglichkeiten der Shell-Programmierung Eigene Skripte erstellen zu können

Mehr

Arithmetik in der tcsh

Arithmetik in der tcsh Arithmetik in der tcsh Variablen speichern Zeichenketten (also Strings/Wörter) @ statt set Interpretation als arithmetische Ausdrücke (aus Ziffern, (, ), +, -, *, /, % bestehend) Beispiele: @ var = (3

Mehr

Systemverwaltung mittels Skripts

Systemverwaltung mittels Skripts Systemverwaltung mittels Skripts Sept. 2003 M. Rigling 1 / 1 Version 0.2 Inhaltsverzeichnis: Systemverwaltung mittels Skripts...1 Inhaltsverzeichnis:...2 1. Skriptsprachen...3 2. Zur Erstellung von Skripts...3

Mehr

Unix-Grundkurs 1. Thema heute: Shell-Skripten

Unix-Grundkurs 1. Thema heute: Shell-Skripten Unix-Grundkurs 1 Thema heute: Unix-Grundkurs 2 Ein Shell-Skript ist die Zusammenfassung von Kommandos in einer Textdatei. Diese Textdatei wird wie ein ablaufbares Programm behandelt. Es werden von einer

Mehr

Arzu Sanli Ibrahim Canakci

Arzu Sanli Ibrahim Canakci Shell-Programmierung 2 Agenda Projektziel Was ist die Shell? Shells im Vergleich Shell vs. C Wofür Shell-Programmierung? Shell-Programmierung Beispielprogramm Schlusswort Quellen 3 Projektziel Da die Möglichkeiten

Mehr

Korn-Shell: Einführung in Shellscripte 1. Übersicht: Einführung - 2. Die Kornshell im Detail - 3.Grundlagen der Programmierung

Korn-Shell: Einführung in Shellscripte 1. Übersicht: Einführung - 2. Die Kornshell im Detail - 3.Grundlagen der Programmierung 1. Übersicht: Einführung - 2. Die Kornshell im Detail - 3.Grundlagen der Programmierung 1. Übersicht und Einführung 1.1 Die Shell allgemein 1.2 Die korn-shell 1.3 Der Weg zum ersten Skript 1.4 Nutzen und

Mehr

Shell-Programmierung

Shell-Programmierung Shell-Programmierung Dr.-Ing. Matthias Sand Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2009 Shell-Programmierung 1/34 2009-04-27 Inhalt Einleitung

Mehr

Korn-Shell: Einführung in Shellscripte 1. Übersicht: Einführung 2. Die Kornshell im Detail 3.Grundlagen der Programmierung

Korn-Shell: Einführung in Shellscripte 1. Übersicht: Einführung 2. Die Kornshell im Detail 3.Grundlagen der Programmierung 1. Übersicht: Einführung 2. Die Kornshell im Detail 3.Grundlagen der Programmierung 1. Übersicht und Einführung 1.1 Die Shell allgemein 1.2 Die korn-shell 1.3 Der Weg zum ersten Skript 1.4 Nutzen und Grenzen

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

Linux II. Reguläre Ausdrücke Editoren Scripting. 2 Linux II. Linux I II III Res WN/TT NLTK XML Weka E Reguläre Ausdrücke Editoren Scripting

Linux II. Reguläre Ausdrücke Editoren Scripting. 2 Linux II. Linux I II III Res WN/TT NLTK XML Weka E Reguläre Ausdrücke Editoren Scripting Linux II 2 Linux II Reguläre Ausdrücke Editoren Scripting Reguläre Ausdrücke Reguläre Ausdrücke beschreiben eine Menge von Zeichenfolgen und werden benutzt um m festzustellen, ob eine Zeichenkette Teil

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

UNIX/Linux Lösung. Mär 08, 16 16:11 Seite 1/6

UNIX/Linux Lösung. Mär 08, 16 16:11 Seite 1/6 Mär 08, 16 16:11 Seite 1/6 Aufgabe 1: Erläutern Sie detailliert das nachfolgende Kommando (Einzelbefehle, Optionen, Zusammenspiel) (20 Punkte): cd /usr/bin Wechsel ins Verzeichnis bin in /usr (2) ls d

Mehr

Shell. Oder Konsole suchen im Application Finder. Auch Terminal, Bash oder Kommandozeile genannt. Bash nimmt Befehle entgegen und führt diese aus

Shell. Oder Konsole suchen im Application Finder. Auch Terminal, Bash oder Kommandozeile genannt. Bash nimmt Befehle entgegen und führt diese aus LUKAS LEIPOLD Shell Shell Oder Konsole suchen im Application Finder Auch Terminal, Bash oder Kommandozeile genannt Bash nimmt Befehle entgegen und führt diese aus Befehle I cd mkdir pwd rm mv cp ls ln

Mehr

JavaScript. Dies ist normales HTML. Hallo Welt! Dies ist JavaScript. Wieder normales HTML.

JavaScript. Dies ist normales HTML. Hallo Welt! Dies ist JavaScript. Wieder normales HTML. JavaScript JavaScript wird direkt in HTML-Dokumente eingebunden. Gib folgende Zeilen mit einem Texteditor (Notepad) ein: (Falls der Editor nicht gefunden wird, öffne im Browser eine Datei mit der Endung

Mehr

Crashkurs Kommandozeile

Crashkurs Kommandozeile Crashkurs Kommandozeile Thomas Werner This work is licensed under the Creative Commons Attribution ShareAlike 2.0 License. To view a copy of this license, visit http://creativecommons.org/licenses/by sa/2.0/de/

Mehr

Linux I II III Res/Pro WN/TT Reguläre Ausdrücke Editoren Scripting. Linux II. 2 Linux II. Reguläre Ausdrücke Editoren Scripting. Ressourcen-Vorkurs

Linux I II III Res/Pro WN/TT Reguläre Ausdrücke Editoren Scripting. Linux II. 2 Linux II. Reguläre Ausdrücke Editoren Scripting. Ressourcen-Vorkurs Linux II 2 Linux II Reguläre Ausdrücke Editoren Scripting POSIX POSIX POSIX ist ein UNIX-Standard, der bestimmte grundlegende Funktionen und Eigenschaften von UNIX-Systemen definiert. Dazu gehören auch

Mehr

Grundlagen der Shellskript-Programmierung

Grundlagen der Shellskript-Programmierung Oliver Kreipl, Dorian Karnbaum, Marc Remolt Grundlagen der Shellskript-Programmierung Ein Webmasters Press Lernbuch Version 1.0.1 vom 3.6.016 Autorisiertes Curriculum für das Webmasters Europe Ausbildungs-

Mehr

Funktionen in JavaScript

Funktionen in JavaScript Funktionen in JavaScript Eine Funktion enthält gebündelten Code, der sich in dieser Form wiederverwenden lässt. Es können ganze Programmteile aufgenommen werden. Mithilfe von Funktionen kann man denselben

Mehr

UNIX/Linux Lösung. Mär 18, 18 15:34 Seite 1/6

UNIX/Linux Lösung. Mär 18, 18 15:34 Seite 1/6 Mär 18, 18 15:34 Seite 1/6 Aufgabe 1: Erläutern Sie detailliert das nachfolgende Kommando (Einzelbefehle, Optionen, Zusammenspiel) (20 Punkte): cd /usr cd bin Wechsel ins /usr (absolut), dann von dort

Mehr

Vorlesung Unix-Praktikum

Vorlesung Unix-Praktikum Vorlesung 8. und interaktiv Technische Fakultät Universität Bielefeld 07. Dezember 2016 1 / 27 Willkommen zur achten Vorlesung Was gab es beim letzten Mal? interaktiv for-schleifen seq, basename CSV-Tabellen

Mehr

Übung: Entwickeln eines Shell-Skripts

Übung: Entwickeln eines Shell-Skripts Aufgabenteil 1 Ziel der Übung Übung: Entwickeln eines Shell-Skripts Anhand eines einfachen Linux-Skripts sollen die Grundlagen der Shell-Programmierung vermittelt werden. Das für die Bash-Shell zu erstellende

Mehr

Teil 1: Einführung in die Shell. Was ist die Shell? Wichtige Kommandos (1) Einführung in die Shell. Grundlagen der Shell-Programmierung

Teil 1: Einführung in die Shell. Was ist die Shell? Wichtige Kommandos (1) Einführung in die Shell. Grundlagen der Shell-Programmierung Einführung in die Shell Grundlagen der Shell-Programmierung Daniel Lutz 22.10.2003 Teil 1: Einführung in die Shell 1 2 Was ist die Shell? Schnittstelle zwischen Benutzer und Computer

Mehr

Linux und Shell-Programmierung Teil 6

Linux und Shell-Programmierung Teil 6 Prof. Dr. Christian Baun Linux und Shell-Programmierung Teil 6 Fachhochschule Frankfurt am Main WS1314 1/18 Linux und Shell-Programmierung Teil 6 Prof. Dr. Christian Baun Fachhochschule Frankfurt am Main

Mehr

Java 8. Elmar Fuchs Grundlagen Programmierung. 1. Ausgabe, Oktober 2014 JAV8

Java 8. Elmar Fuchs Grundlagen Programmierung. 1. Ausgabe, Oktober 2014 JAV8 Java 8 Elmar Fuchs Grundlagen Programmierung 1. Ausgabe, Oktober 2014 JAV8 5 Java 8 - Grundlagen Programmierung 5 Kontrollstrukturen In diesem Kapitel erfahren Sie wie Sie die Ausführung von von Bedingungen

Mehr

Vorlesung Unix-Praktikum

Vorlesung Unix-Praktikum 1/2 Vorlesung 8. und interaktiv Rechnerbetriebsgruppe Technische Fakultät Universität Bielefeld 07. Dezember 2015 2/2 Willkommen zur achten Vorlesung Was gab es beim letzten Mal? interaktiv for-schleifen

Mehr

Einführung Unix Shell

Einführung Unix Shell Einführung Unix Shell Prof. Dr. Rüdiger Weis Beuth Hochschule Berlin Wintersemester 2012/2013 Prof. Dr. Rüdiger Weis Einführung Unix Shell Beuth Hochschule Berlin 1 Datei Komandos 2 Wildcards 3 Variablen

Mehr

Vorlesung Unix-Praktikum

Vorlesung Unix-Praktikum 1/3 Vorlesung 5. und Rechnerbetriebsgruppe Technische Fakultät Universität Bielefeld 16. November 2015 2/3 Willkommen zur fünften Vorlesung Was gab es beim letzten Mal? Prozesse Dateiberechtigungen 3/3

Mehr

Grundlagen der Informatik Vorlesungsskript

Grundlagen der Informatik Vorlesungsskript Grundlagen der Informatik Vorlesungsskript Prof. Dr. T. Gervens, Prof. Dr.-Ing. B. Lang, Prof. Dr. F.M. Thiesing, Prof. Dr.-Ing. C. Westerkamp 16 AUTOMATISCHES ÜBERSETZEN VON PROGRAMMEN MIT MAKE... 2 16.1

Mehr

Übersicht PERL. !!!! Wichtig: Nach dem Befehl einem Strichpunkt setzen!!!!

Übersicht PERL. !!!! Wichtig: Nach dem Befehl einem Strichpunkt setzen!!!! !!!! Wichtig: Nach dem Befehl einem Strichpunkt setzen!!!! Erste Zeile eines PERL-Scripts: #! /usr/bin/perl Variablen in PERL: Normale Variablen beginnen mit einem $-Zeichen Array-Variablen beginnen mit

Mehr

Übung 2 - Betriebssysteme I

Übung 2 - Betriebssysteme I Prof. Dr. Th. Letschert FB MNI 22. März 2002 Aufgabe 1 Übung 2 - Betriebssysteme I 1. Informieren Sie sich mit Hilfe der Manualseiten, der Online Unterlagen von Dr. Jäger oder anderer Unterlagen über Unix

Mehr

Funktionen in JavaScript

Funktionen in JavaScript Funktionen in JavaScript Eine Funktion enthält gebündelten Code, der sich in dieser Form wiederverwenden lässt. Mithilfe von Funktionen kann man denselben Code von mehreren Stellen des Programms aus aufrufen.

Mehr

Unix-Shells. mehrere Befehle in einer Zeile. bash: Grundlagen. Ein- und Ausgaben umlenken. Befehle: Dateien und Verzeichnisse (1)

Unix-Shells. mehrere Befehle in einer Zeile. bash: Grundlagen. Ein- und Ausgaben umlenken. Befehle: Dateien und Verzeichnisse (1) Programmierkurs für absolute Anfänger Unix-Befehle und bash-skripte Caren Brinckmann Sommersemester 2005 http://www.coli.uni-saarland.de/~cabr/teaching.php Unix-Shells Shell: Schnittstelle zwischen Benutzer

Mehr

Übung 4: Schreiben eines Shell-Skripts

Übung 4: Schreiben eines Shell-Skripts Aufgabenteil 1 Ziel der Übung Übung 4: Schreiben eines Shell-Skripts Anhand eines einfachen Linux-Skripts sollen die Grundlagen der Shell-Programmierung vermittelt werden. Das für die Bash-Shell zu erstellende

Mehr

105.1 Shell, Scripting

105.1 Shell, Scripting LPI Zertifizierung 105.1 Shell, 105.2 Scripting Copyright ( ) 2006-2009 by Dr. W. Kicherer. This work is licensed under the Creative Commons Attribution- Noncommercial-Share Alike 2.0 Germany License.

Mehr

C++ Teil 2. Sven Groß. 16. Apr IGPM, RWTH Aachen. Sven Groß (IGPM, RWTH Aachen) C++ Teil Apr / 22

C++ Teil 2. Sven Groß. 16. Apr IGPM, RWTH Aachen. Sven Groß (IGPM, RWTH Aachen) C++ Teil Apr / 22 C++ Teil 2 Sven Groß IGPM, RWTH Aachen 16. Apr 2015 Sven Groß (IGPM, RWTH Aachen) C++ Teil 2 16. Apr 2015 1 / 22 Themen der letzten Vorlesung Hallo Welt Elementare Datentypen Ein-/Ausgabe Operatoren Sven

Mehr

Fachhochschule Frankfurt am Main Fachbereich 2: Informatik WS 2008/2009

Fachhochschule Frankfurt am Main Fachbereich 2: Informatik WS 2008/2009 Fachhochschule Frankfurt am Main Fachbereich 2: Informatik WS 2008/2009 Teil 5: Unix Shells Dr. Erwin Hoffmann E-Mail: unix@fehcom.de https://www.fehcom.net/unix/ Shell? Standardard-mässig führt Unix nach

Mehr

Vorlesung Unix-Praktikum

Vorlesung Unix-Praktikum 1/4 Vorlesung 9., bash- Rechnerbetriebsgruppe Technische Fakultät Universität Bielefeld 14. Dezember 2015 2/4 Willkommen zur neunten Vorlesung Was gab es beim letzten Mal? while-schleifen read Arrays Shell-History

Mehr

4 Schleifen -= Entstanden unter Excel 2003 =-

4 Schleifen -= Entstanden unter Excel 2003 =- Excel KnowHow / Visual Basic (VBA) 4 Schleifen -= Entstanden unter Excel 2003 =- Die erste Schleife habe ich bereits im letzten Kapitel benutzt: Die FOR-Schleife. Schauen wir uns das Beispiel noch einmal

Mehr

Technische Praxis der Computersysteme 1

Technische Praxis der Computersysteme 1 Technische Praxis der Computersysteme 1 5. Arbeiten mit der Bash Thomas Leitner Fakultät für Mathematik, Universität Wien Wintersemester 2012 Letzte Änderung: 2013-09-20 20:46:08

Mehr

Linux Tutorium. 12. Shellprogrammierung. Version vom 02.07.2008 13:38:56

Linux Tutorium. 12. Shellprogrammierung. Version vom 02.07.2008 13:38:56 Linux Tutorium 12. Shellprogrammierung Version vom 02.07.2008 13:38:56 im Grunde ist ein Shell-Skript nichts anderes als eine Textdatei, welche Befehlsfolgen enthält Shell-Skripte werden im Wesentlichen

Mehr

Programming 101. Carl Herrmann IPMB & DKFZ

Programming 101. Carl Herrmann IPMB & DKFZ Programming 101 Carl Herrmann IPMB & DKFZ Programmieren Kommandozeile Einfache Befehle Shell Skript aneinanderketten von Befehlen Schleifen Programmiersprache Komplexere Aufgaben Gemeinsamkeiten Alle Programmiersprachen

Mehr

Vorsemesterkurs Informatik Sommersemester Aufgabenblatt Nr. 1B

Vorsemesterkurs Informatik Sommersemester Aufgabenblatt Nr. 1B Fachbereich Informatik und Mathematik Institut für Informatik Vorsemesterkurs Informatik Sommersemester 209 Aufgabenblatt Nr. B Aufgabe (Verzeichnisse) a) Finden Sie heraus, wie Ihr Homeverzeichnis auf

Mehr

Linux-Einführung Übung

Linux-Einführung Übung Linux-Einführung Übung Mark Heisterkamp 24. 25. Februar 2010 1 Einführung und Grundlagen 1.1 Erste Schritte... 1.1.1 Xterminalfenster Öffnen Sie ein weiteres Xterminalfenster mit der Maus. mittels Kommando.

Mehr

Bash Skripte erlauben die Automatisierung von wiederkehrenden Befehlsfolgen.

Bash Skripte erlauben die Automatisierung von wiederkehrenden Befehlsfolgen. Programmierung der Bash Eine wesentliche Aufgabe des Bash Interptreters stellt die Unterstützung der Automatisierung von wiederkehrenden Befehlsfolgen dar. Als Programmiersprache ist die Bash somit ein

Mehr

Eine kleine Befehlssammlung für Java Teil1

Eine kleine Befehlssammlung für Java Teil1 Eine kleine Befehlssammlung für Java Teil1 Definition einer Klasse public class Klasse{ Hier wird der Name der Klasse definiert. In diesem Fall ist das Klasse. Der Name muss mit dem Namen der.class Datei

Mehr

Linux Kommandozeile: Einfache Skripte. 1 Wiederhohlung. 2 Einfache Skripte

Linux Kommandozeile: Einfache Skripte. 1 Wiederhohlung. 2 Einfache Skripte Linux Kommandozeile: Einfache Skripte AST, Wintersemester 2016/2017 1 Wiederhohlung Hier sind ein paar Befehle, die ihr letzte Woche schon kennen gelernt habt und heute benutzt. Befehl Parameter Funktion

Mehr

hue12 January 24, 2017

hue12 January 24, 2017 hue12 January 24, 2017 1 Abgabehinweise Beachten Sie unbedingt diese Hinweise, sonst erhalten Sie keine Punkte aus dieser Abgabe! Für Details siehe z.b. Folien der nullten Zentralübung 1.1 Namen und Matrikelnummern

Mehr

Java: Eine kurze Einführung an Beispielen

Java: Eine kurze Einführung an Beispielen Java: Eine kurze Einführung an Beispielen Quellcode, javac und die JVM Der Quellcode eines einfachen Java-Programms besteht aus einer Datei mit dem Suffix.java. In einer solchen Datei wird eine Klasse

Mehr

FH Frankfurt am Main WS 2007/2008. Unix-Praktikum

FH Frankfurt am Main WS 2007/2008. Unix-Praktikum FH Frankfurt am Main WS 2007/2008 Fachbereich 2 UNIX-Praktikum Studiengang Informatik Dr. Joachim Schneider Übungsblatt 9 Unix-Praktikum Lernziele: Kontroll-Strukturen in Shells, Shellskripte Shellskripte

Mehr

Technische Praxis der Computersysteme I 3. Vorlesung

Technische Praxis der Computersysteme I 3. Vorlesung Technische Praxis der Computersysteme I 3. Vorlesung Bernhard Lamel Universität Wien, Fakultät für Mathematik WS 2007 Outline 1 Grundlegende Informationen 2 Umgang mit Textdateien 3 Schleifen und Kontrollstrukturen

Mehr

Methoden. Gerd Bohlender. Einstieg in die Informatik mit Java, Vorlesung vom

Methoden. Gerd Bohlender. Einstieg in die Informatik mit Java, Vorlesung vom Einstieg in die Informatik mit Java, Vorlesung vom 2.5.07 Übersicht 1 2 definition 3 Parameterübergabe, aufruf 4 Referenztypen bei 5 Überladen von 6 Hauptprogrammparameter 7 Rekursion bilden das Analogon

Mehr

Informatik für Schüler, Foliensatz 2 Ausdrücke, Variablen, Datentypen, Ein- und Ausgabe

Informatik für Schüler, Foliensatz 2 Ausdrücke, Variablen, Datentypen, Ein- und Ausgabe Prof. G. Kemnitz Institut für Informatik, Technische Universität Clausthal 26. August 2009 1/17 Informatik für Schüler, Foliensatz 2 Ausdrücke, Variablen, Datentypen, Ein- und Ausgabe Prof. G. Kemnitz

Mehr

Das diesem Dokument zugrundeliegende Vorhaben wurde mit Mitteln des Bundesministeriums für Bildung und Forschung unter dem Förderkennzeichen

Das diesem Dokument zugrundeliegende Vorhaben wurde mit Mitteln des Bundesministeriums für Bildung und Forschung unter dem Förderkennzeichen Das diesem Dokument zugrundeliegende Vorhaben wurde mit Mitteln des Bundesministeriums für Bildung und Forschung unter dem Förderkennzeichen 16OH21005 gefördert. Die Verantwortung für den Inhalt dieser

Mehr

Shellprogrammierung. Einführung in Linux. Antonia Blanke. Shellprogrammierung Die Linux Shell Besondere Zeichen Pipes Variablen Bedingungen und Tests

Shellprogrammierung. Einführung in Linux. Antonia Blanke. Shellprogrammierung Die Linux Shell Besondere Zeichen Pipes Variablen Bedingungen und Tests Einführung in Linux Antonia Blanke Einstieg in Warum? Wann ist ein Shellskript ungeeignet? Die Shell ist ein Kommandointerpreter Neben ihrer Aufgabe als Schicht zwischen Kernel und Nutzer kann sie auch

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 47 Einstieg in die Informatik mit Java Anweisungen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 47 1 Ausdrucksanweisung 2 Einfache Ausgabeanweisung 3 Einfache Eingabeanweisung,

Mehr

Technische Praxis der Computersysteme

Technische Praxis der Computersysteme Tests Command Substitutuon: Man Befehle an beliebiger Stelle in andere Befehle einbauen um deren Ausgaben als Parameter zu nutzen. Dies ist mit den und $(... ) Umgebungen möglich. z.b.: ls $( echo / usr

Mehr

Übersicht. Einführung in Perl Datenstrukturen I. Datentypen Übersicht (1) Kernbegriffe. Kernbegriffe. Einführung der Datentypen.

Übersicht. Einführung in Perl Datenstrukturen I. Datentypen Übersicht (1) Kernbegriffe. Kernbegriffe. Einführung der Datentypen. Übersicht Kernbegriffe Einführung der Datentypen Skalare im Detail Vergleichsoperatoren Standardeingabe chomp-operator while-schleife Perl, 24.10.03 Datentypen I 1 Datentypen Übersicht (1) Datentyp Erklärung

Mehr

Programmieren in C. Eine Einführung in die Programmiersprache C. Prof. Dr. Nikolaus Wulff

Programmieren in C. Eine Einführung in die Programmiersprache C. Prof. Dr. Nikolaus Wulff Programmieren in C Eine Einführung in die Programmiersprache C Prof. Dr. Nikolaus Wulff Textausgabe per printf Die Funktion printf ist kein Bestandteil der C Sprache sondern gehört zur C Bibliothek. printf

Mehr

Grundlagen der Programmierung

Grundlagen der Programmierung Grundlagen der Programmierung 8. Vorlesung 25.05.2016 1 Ausdrücke "Befehle", die ein Ergebnis liefern 3 + 4 sin(x) x < 10 getchar() Ausdrücke können Teil eines anderen Ausdrucks sein x = sin( x + y ) Auswertung:

Mehr

Einführung in die Programmierung WS 2009/10. Übungsblatt 5: Typen, Variablen und einfache Methoden in Java

Einführung in die Programmierung WS 2009/10. Übungsblatt 5: Typen, Variablen und einfache Methoden in Java Ludwig-Maximilians-Universität München München, 20.11.2009 Institut für Informatik Prof. Dr. Christian Böhm Annahita Oswald, Bianca Wackersreuther Einführung in die Programmierung WS 2009/10 Übungsblatt

Mehr

Informatik I Übung, Woche 40

Informatik I Übung, Woche 40 Giuseppe Accaputo 2. Oktober, 2014 Plan für heute 1. Fragen & Nachbesprechung Übung 2 2. Zusammenfassung der bisherigen Vorlesungsslides 3. Tipps zur Übung 3 Informatik 1 (D-BAUG) Giuseppe Accaputo 2 Nachbesprechung

Mehr

Webbasierte Programmierung

Webbasierte Programmierung Webbasierte Programmierung Eine Einführung mit anschaulichen Beispielen aus der HTML5-Welt apl. Prof. Dr. Achim Ebert Inhalt Kapitel 6: JavaScript Kontrollstrukturen Verzweigungen Einseitig, zweiseitig,

Mehr

Arbeiten mit der Shell Teil 2

Arbeiten mit der Shell Teil 2 Arbeiten mit der Shell Teil 2 Linux-Kurs der Unix-AG Benjamin Eberle 11. Mai 2016 Übersicht - Dateiinhalte anzeigen cat : Dateiinhalte auf die Shell ausgeben less : Dateiinhalte seitenweise anzeigen head

Mehr

Vorlesung 4: Shell-Scripting (Teil 1)

Vorlesung 4: Shell-Scripting (Teil 1) Vorlesung 4: Shell-Scripting (Teil 1) Shell-Beispiele: Bash Dash Fish Z-Shell (zsh) Korn-Shell (ksh) Mksh Weitestverbreitete Shell bei Linux- Systemen Standard-Shell unter Ubuntu Shell mit der expliziten

Mehr

Vorlesung Unix-Praktikum

Vorlesung Unix-Praktikum Vorlesung 5. und Folien nach Carsten Gnörlich Technische Fakultät Universität Bielefeld 15. November 2017 1 / 34 Willkommen zur fünften Vorlesung Was gab es beim letzten Mal? Prozesse Dateiberechtigungen

Mehr

Schleifen: Immer wieder dasselbe tun

Schleifen: Immer wieder dasselbe tun Schleifen: Immer wieder dasselbe tun Bei einer Schleife werden Anweisungen immer wieder ausgeführt, solange die Bedingung wahr ist. Dafür muss man eine Variable immer wieder ändern, solange bis eine Überprüfung

Mehr

Grundlagen. Wie sind PHP-Dateien aufgebaut?

Grundlagen. Wie sind PHP-Dateien aufgebaut? Grundlagen PHP und MySQL PHP läuft serverseitig!! Wie sind PHP-Dateien aufgebaut? PHP-Dateien fangen mit an und hören mit auf. Sie müssen die Dateiendung *.php haben echo "So könnte eine Datei aussehen\n";

Mehr

Windows PowerShell. CmdLets. PipeLine / Filter. Variablen / Operatoren. Schleifen / Prüfmethoden. Funktionen / Skripte. Allgegenwärtige Parameter

Windows PowerShell. CmdLets. PipeLine / Filter. Variablen / Operatoren. Schleifen / Prüfmethoden. Funktionen / Skripte. Allgegenwärtige Parameter CmdLets PipeLine / Filter Variablen / Operatoren Schleifen / Prüfmethoden Funktionen / Skripte Allgegenwärtige Parameter Hilfe ComObjekte PowerShell: Oberfläche PowerShell --- Voraussetzungen.NET Framework

Mehr

Programmiersprache 1 (C++) Prof. Dr. Stefan Enderle NTA Isny

Programmiersprache 1 (C++) Prof. Dr. Stefan Enderle NTA Isny Programmiersprache 1 (C++) Prof. Dr. Stefan Enderle NTA Isny 5. Kontrollstrukturen Allgemein Kontrollstrukturen dienen zur Steuerung des Programmablaufs. (Bemerkung: C und C++ besitzen die selben Kontrollstrukturen.)

Mehr

4.2 Selbstdefinierte Matlab-Funktionen 1. Teil

4.2 Selbstdefinierte Matlab-Funktionen 1. Teil 4.2 Selbstdefinierte Matlab-Funktionen 1. Teil 37 Ein m-file mit Namen Funktionsname.m und einer ersten Zeile der folgen Form: function Funktionsname(input1,input2,...,inputn) oder function output1=funktionsname(input1,input2,...,inputn)

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 41 Einstieg in die Informatik mit Java Weitere Anweisungen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 41 1 Überblick 2 Verbundanweisung 3 Bedingte Anweisung 4 Auswahlanweisung

Mehr

Funktionen nur wenn dann

Funktionen nur wenn dann Funktionen nur wenn dann Funktionen können auch nur in bestimmten Fällen angewendet werden. Code wird nur in einem bestimmten Fall ausgeführt Code Ja Code Block wahr if wahr? Nein else Code Block Alternative

Mehr

Überblick zum Thema CDO und Shell-Skripting

Überblick zum Thema CDO und Shell-Skripting Überblick zum Thema CDO und Shell-Skripting Studenten-Anleitung zum Umgang mit dem FreVast-System Phase 3 Auswertung Kurseinheit 24 FreVast Team https://vast.klimod.de/portal/ 5. April 2017 Überblick zum

Mehr

+ C - Formatierte Eingabe mit scanf()

+ C - Formatierte Eingabe mit scanf() + C - Formatierte Eingabe mit scanf() BKTM - Programmieren leicht gemacht. Formatierte Eingabe mit scanf() Um eine Eingabe von der Tastatur bereitzustellen, kann man die scanf()-funktion benutzen. Der

Mehr

Informatik I Übung, Woche 40

Informatik I Übung, Woche 40 Giuseppe Accaputo 1. Oktober, 2015 Plan für heute 1. Nachbesprechung Übung 2 2. Vorbesprechung Übung 3 3. Zusammenfassung der für Übung 3 wichtigen Vorlesungsslides Informatik 1 (D-BAUG) Giuseppe Accaputo

Mehr

Programmierkurs Python I

Programmierkurs Python I Programmierkurs Python I Michaela Regneri 2009-11-05 (Folien basieren auf dem gemeinsamen Kurs mit Stefan Thater) Übersicht Variablen Datentypen Werte Operatoren und Ausdrücke Kontrollstrukturen: if, while

Mehr

Python Intro. Vorsemesterkurs Informatik Praktischer Teil WS2012/13. 2.Oktober Vorkurs Informatik - WS 2012/13

Python Intro. Vorsemesterkurs Informatik Praktischer Teil WS2012/13. 2.Oktober Vorkurs Informatik - WS 2012/13 Python Intro Vorsemesterkurs Informatik Praktischer Teil WS2012/13 2.Oktober 2012 Let's get started } Skript, Übungen, Folien... Alles zum Praxisteil auf http://vorkurs.cs.unifrankfurt.de Bücher: Fragen!

Mehr

C++ Teil Schleifen. Man kann bestimme Anweisungen in einem Programm mehrfach ausführen lassen. Dazu gibt es in C++ verschiedene Schleifen.

C++ Teil Schleifen. Man kann bestimme Anweisungen in einem Programm mehrfach ausführen lassen. Dazu gibt es in C++ verschiedene Schleifen. C++ Teil 3 3.3 Schleifen Man kann bestimme en in einem Programm mehrfach ausführen lassen. Dazu gibt es in C++ verschiedene Schleifen. for-schleife for-schleife while-schleife do-while-schleife for ( Ausdruck1;

Mehr

Informatik I: Einführung in die Programmierung

Informatik I: Einführung in die Programmierung Informatik I: Einführung in die Programmierung 5., bedingte Ausführung und Albert-Ludwigs-Universität Freiburg Bernhard Nebel 27. Oktober 2017 1 und der Typ bool Typ bool Typ bool Vergleichsoperationen

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 26 Einstieg in die Informatik mit Java Methoden Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 26 1 Methoden 2 Methodendefinition 3 Parameterübergabe, Methodenaufruf

Mehr

ZWEITE ÜBUNG ZUR EINFÜHRUNG IN DIE PROGRAMMIERUNG FÜR COMPUTERLINGUISTEN LEONIE WEIßWEILER

ZWEITE ÜBUNG ZUR EINFÜHRUNG IN DIE PROGRAMMIERUNG FÜR COMPUTERLINGUISTEN LEONIE WEIßWEILER ZWEITE ÜBUNG ZUR EINFÜHRUNG IN DIE PROGRAMMIERUNG FÜR COMPUTERLINGUISTEN ABSTIMMEN! https://abstimmung.semesterticket-muenchen.de/ WIEDERHOLUNG - VARIABLEN WIEDERHOLUNG - VARIABLEN Clemens = Simone Simone

Mehr

Modul Entscheidungsunterstützung in der Logistik. Einführung in die Programmierung mit C++ Übung 2

Modul Entscheidungsunterstützung in der Logistik. Einführung in die Programmierung mit C++ Übung 2 Fakultät Verkehrswissenschaften Friedrich List, Professur für Verkehrsbetriebslehre und Logistik Modul Entscheidungsunterstützung in der Logistik Einführung in die Programmierung mit C++ Übung 2 SS 2016

Mehr

C# - Einführung in die Programmiersprache Bedingte Anweisungen und Schleifen

C# - Einführung in die Programmiersprache Bedingte Anweisungen und Schleifen C# - Einführung in die Programmiersprache Bedingte Anweisungen und Schleifen Gehe nach links oder rechts Gehe solange geradeaus... Leibniz Universität IT Services Anja Aue Programmabläufe grafisch abbilden

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java Vorlesung vom 25.4.07, Anweisungen Übersicht 1 Ausdrucksanweisung 2 Einfache Ausgabeanweisung 3 Einfache Eingabeanweisung, Vorbereitungen 4 Verbundanweisung 5 Bedingte Anweisung 6 Auswahlanweisung 7 for

Mehr