Technische Praxis der Computersysteme

Größe: px
Ab Seite anzeigen:

Download "Technische Praxis der Computersysteme"

Transkript

1

2 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 / tmp ) ls $( sed -nre s /.*:(\/ home \/[^:]+):.*/\1/ p \ / etc / passwd )

3 Tests Tests: test-ausdrücke treten in verschiedenen Formen auf: Als Aufruf an den test-befehl, z.b. test 1 -lt 0 testet ob 1 kleiner als 0 ist. Via [ ], z.b. [ 1 -lt 0 ] Via [[ ]], z.b [[ 1 -lt 0 ]]

4 Tests String Tests: -n STRING: STRING hat eine nicht-null Länge -z STRING: STRING hat Länge null STRING1 = STRING2: STRING1 und STRING2 sind gleich. STRING1!= STRING2: STRING1 und STRING2 sind ungleich. Achtung: Bash und zsh erlauben auch == als Vergleichsoperator.

5 Tests Numerische Tests: exp1 -eq exp2: Wahr falls exp1 numerisch gleich exp2. exp1 -ne exp2: Wahr falls exp1 ungleich exp2 exp1 -lt exp2: kleiner als (less than) exp1 -gt exp2: größer als (greater than) exp1 -le exp2: kleiner gleich (less or equal) exp1 -ge exp2: größer gleich (greater or equal)

6 Tests File Tests: -b file: true if file exists and is a block special file. -c file: true if file exists and is a character special file. -d file: true if file exists and is a directory. -e file: true if file exists. -f file: true if file exists and is a regular file. -h file: true if file exists and is a symbolic link. -r file: true if file exists and is readable by current process. -w file: true if file exists and is writable by current process. -x file: true if file exists and is executable by current process. If file exists and is a directory, then the current process has permission to search in the directory.

7 Tests Verknüpfen von Tests: Tests können mit ( exp ) gruppiert werden. Außerdem gibt es! exp: Nicht : Wahr falls exp falsch exp1 && exp2: Und : Wahr falls exp1 und exp2 wahr sind. exp1 exp2: Oder : Wahr falls exp1 oder exp2 wahr ist (inklusives oder!).

8 Tests Verknüpfen von Tests: Tests können mit ( exp ) gruppiert werden. Außerdem gibt es! exp: Nicht : Wahr falls exp falsch exp1 && exp2: Und : Wahr falls exp1 und exp2 wahr sind. exp1 exp2: Oder : Wahr falls exp1 oder exp2 wahr ist (inklusives oder!). Bemerkung: Das sind nicht alle Tests.

9 Tests Bemerkung: Test-Statements können auch außerhalb eines if-then-blocks verwendet werden. Dies ist vor allem nützlich wenn man eine kurze Schreibweise für die Konditionelle ausführung eines Befehls haben möchte: [[ TEST ]] && BEFEHL

10 Tests Bemerkungen: Während test und [ der alte Standard ist und [[ sich auf den ersten Blick sehr ähnlich verhält gibt es mehrere Fälle in denen [[ (in der bash) andere Eigenschaften besitzt. z.b.: In [[ gibt es mehr und oft intuitivere Tests, z.b. && und anstatt -a (and) und -o (or) In [[ findet kein Word Splitting oder globbing statt (insbesondere: kein -e "$file", sondern einfach -e $file, egal ob $file whitespaces enthält).

11 Spezielle Variablen und Argumente: Spezielle Variablen: $0: Name des aktuellen Befehls (e.g. im Falle eines Shellscripts der Name des Scripts) $#: Anzahl der übergebenen Argumente $*: Alle Argumente als String (bash) oder array (zsh) (Besondere Bedeutung, siehe unten) Fast wie $* (siehe unten) $$: Die PID der Shell $!: Die PID des zuletzt gestarteten Hintergrundprozesses

12 Spezielle Variablen und Argumente:! Die Variablen $* und $@ verhalten sich ident, solange sie nicht in " Quotes auftauchen. Sobald man diese beiden speziellen Variablen unter " Anführungszeichen setzt erhalt man: "$*": Die Parameter werden als einzelnes Wort aufgefasst, getrennt durch $IFS (falls gesetzt, Leerzeichen sonst). "$@": Jeder Parameter wird ein seperates Wort (inklusiver leerer Parameter!). Wurden keine Parameter übergenen wird sowohl $@ als auch "$@" beim Einsetzen entfernt.

13 Spezielle Variablen und Argumente: Positionsparameter: Zusätzlich zu $* und kann auch mit $1,...,$n auf die an die Shell übergebenen Argumente zugegriffen werden. (In manchen Shells ist n auf maximal 9 limitiert, nicht aber in bash und zsh).

14 Spezielle Variablen und Argumente: Positionsparameter: Zusätzlich zu $* und kann auch mit $1,...,$n auf die an die Shell übergebenen Argumente zugegriffen werden. (In manchen Shells ist n auf maximal 9 limitiert, nicht aber in bash und zsh). Shiften von Parametern: Beim Parsen/einlesen von Parametern ist es oft nützlich bereits eingelesene Parameter aus $@ usw. zu entfernen. Dafür nutzt man shift. shift ist ein eingebauter Shellbefehl, der alle Parameter um eines nach links verschiebt bzw. allgemein a shift n um n Schritte nach links verschiebt, i.e. die ersten n Parameter aus der Liste der Argumente entfernt. Dies wirkt sich insbesondere auch auf Positionsparameter aus!

15 Kontrollstrukturen Kontrollstrukturen: Bei Shellscripts ist es besonders wichtig, die Rückgabewerte von Programmen oder die Werte von Variablen automatisiert auszuwerten und abhängig davon weitere Aktionen durchzuführen. Wie jede Programmiersprache besitzt daher auch eine Shell üblicherweise die grundlegenden Kontrollstruktueren wie if-then, case, while, for, until.

16 Kontrollstrukturen if-then Ein if-then Block testet den Rückgabewert eines Befehls und führt im Erfolgsfall einen oder mehrere Befehle aus. Ein if-block wird mit dem fi Keyword terminiert. if command then fi

17 Kontrollstrukturen else und else if: In einem if-then-block kann auch ein else vorkommen. Dieser Block wird ausgeführt, falls das if-statement nicht zutraf. Außerdem kann man weitere Fälle mit einem else if weiter unterscheiden. else if kann auch mit elif abgekürzt werden. if command then... else #if, elif fi

18 Kontrollstrukturen case: Das case-konstrukt kann genutzt werden, um effizient verschiedene Konditonen zu testen: case EXPRESSION in CASE1 )... ;; CASE2 )... ;; esac

19 Kontrollstrukturen case: Die EXPRESSION ist dabei ein String, der gegen die Verschiedenen Fälle gematcht wird. Die CASE-Ausdrücke können dabei globbing Patterns sein. Verschiedene cases können mit oder-verknüpft werden. Die doppelten Semikolon ;; sind dabei ein break, springen also aus dem case-block.

20 Kontrollstrukturen Beispiel: case $var in [0-9]) echo "A single digit " ;; [a-z ] [A-Z]) echo "A single character " ;; *) echo " Something else entirely " ;; esac

21 Kontrollstrukturen Schleifen: Die meisten Shells unterstützen drei Arten von Schleifen: for, while und until. Dabei unterscheidet sich for etwas von den anderen beiden.

22 Kontrollstrukturen for: for i in list do done oder manchmal: for ((n=1; n <= LIMIT ; n ++)) do done

23 Kontrollstrukturen Beispiel und Bemerkung: Die for ((n=1; n <= LIMIT; n++))-form einer Zählschleife ist nicht immer verfügbar. Um eine Vorschleife über eine Liste von Zahlen mit der Standardsyntax for i in list zu erreichen gibt es zwei Möglichkeiten: for i in $( seq 1 10); do...; done for i in {1..10}; do...; done Die erste Variante nutzt dabei Command Substitution und den seq-befehl um eine Sequenz von Zahlen zu erzeugen, die andere eine spezielle Shell expansion {m..n}.

24 Kontrollstrukturen seq: seq - print a sequence of numbers Start und Endwert kann an seq in der Form seq FIRST LAST übergeben werden. Alternativ kann man auch die Inkrementierungsschritte mit seq FIRST INCREMENT LAST festgelegt werden.

25 Kontrollstrukturen seq: seq - print a sequence of numbers Start und Endwert kann an seq in der Form seq FIRST LAST übergeben werden. Alternativ kann man auch die Inkrementierungsschritte mit seq FIRST INCREMENT LAST festgelegt werden. Wichtige Parameter: -s, --seperator STRING: Nutzt STRING als Trennzeichen anstatt eine neue Zeile für jede Zahl zu beginnen.

26 Kontrollstrukturen for und globbing: for i in list wird häeuftig in Verbindung mit File Globbing angewendet: for i in *. txt ; do... done

27 Kontrollstrukturen for und Variablen: for i in $var verhält sich je nach Shell ein wenig anders. So liefert foo =" bar baz " for i in $foo do echo $i done In der zsh einfach bar baz, in der bash aber zwei Zeilen: bar und baz. Das liegt daran, dass in der bash Variablen bei Leerzeichen seperiert werden, wenn man sie mit $foo substituiert.

28 Kontrollstrukturen for und Seperatoren: Wollen wir z.b. über jede mit : getrennte Komponente der $PATH Variable iterieren, gibt es mehrere Möglichkeiten: bash: Parameter Expansion: for i in ${ PATH //:/ }; do echo $i; done bash: Internal Field Seperator, $IFS (besser?) IFS = : ; for i in $PATH ; do echo $i; done zsh: field splitting, parameter expansion flags: for i in ${(s /:/) PATH }; do echo $i; done

29 Kontrollstrukturen until, while: while list do... done until list do... done

30 Kontrollstrukturen until, while: until und while führen einen Block aus bis/solange list den Wert true zurückgibt.

31 Kontrollstrukturen Beispiel: while kann zum Zeilenweisen einlesen einer Datei in eine Variable genutzt werden. (siehe Beispiel while-read.sh)

32 Kontrollstrukturen Beispiel: while kann zum Zeilenweisen einlesen einer Datei in eine Variable genutzt werden. (siehe Beispiel while-read.sh) read: Der read-befehl liest eine Zeile von stdin und speichert ihn in einer Variable (der Variablenname muss als Argument angegeben werden).

33 Kontrollstrukturen Beispiel: while wird zusammen mit case, shift und getopts oft zum Parsen von Parametern in Shellscripts genutzt. (Siehe while-getopts.sh)

34 Kontrollstrukturen while, until und Zählschleifen: Man kann mit while und until auch Zählschleifen ähnlich zu for ((...)) schreiben. Hierzu nutzt man arithmetic expansion, z.b.: i=0 while (( i < 10 )); do... (( i++ )) done

35 Kontrollstrukturen Bemerkung: for iteriert über eine Liste von Werten, während while und until eine Bedingung auswerten (wie if) und laufen, solange/bis diese erüllt ist.

36 Funktionen Funktionen: Funktionen werden a name () {...} oder function name {...} definiert. Optional kann bei der Form function name auch eine () genutzt werden. Aus Funktionen kann mit return [n] wieder zurückgekehrt werden. Der Statuswert ist dabei optional.

37 Funktionen Auflisten und Löschen von Funktionen: Eine Liste aller in einer Shell definierten Funktionen samt Code erhält man mit typeset -f. Eine einzelne Funktion kann dabei mit typeset -f name betrachtet werden. Möchte man eine definierte Funktion wieder löchen kann dies mit unset -f name gemacht werden.

38 Funktionen Funktionsargumente: Funktionsargumente werden - anders als bei elen Programmiersprachen - nicht explizit in der Definition festgelegt, sondern einfach übergeben, i.e. name arg1 arg2... argn ruft name mit n Argumenten arg1 arg2... argn auf, auf die dann wie bei Shellscripts a $1,..,$n zugegriffen werden kann. Auch die speziellen Variablen $@, $*, $# und $0 werden entsprechend umgesetzt.

39 Funktionen Function body enclosure: Es gibt zwei verschiedene Arten den Code einer Funktion zu umschließen. Üblicherweise nutzt man dafür {...}, man kann aber auch (...) verwenden. Der Code zwischen {...} wird von der laufenden Shell interpretiert, während der Code zwischen (...) in einer Subshell ausgeführt wird.

40 Funktionen Function body enclosure: Es gibt zwei verschiedene Arten den Code einer Funktion zu umschließen. Üblicherweise nutzt man dafür {...}, man kann aber auch (...) verwenden. Der Code zwischen {...} wird von der laufenden Shell interpretiert, während der Code zwischen (...) in einer Subshell ausgeführt wird. Bemerkung: Insbesondere kann der Code in (...) die Variablen der Parent Shell nicht nachhaltig modifizieren. {...} sowieso (...) werden ganz allgemein zum Gruppieren von Befehlen genutzt und können an beliebiger Stelle eingesetzt werden.

41 Funktionen Einbinden von Dateien in eine Shell: Eine Shell bzw. ein Shellscript kann auch andere Dateien einbinden und so z.b. Funktionen und Variablen aus anderen Dateien importieren. Dazu wird die zu importierende Datei als Argument an den source Befehl übergeben, e.g. source ~/. zsh / functions

42 Funktionen Standarddateien, die von Shells einbunden werden: Die meisten Shells importieren zu Beginn der Ausführung einige Standarddateien z.b. ~/.bashrc oder ~/.zshrc für interaktive Varianten der bash bzw. zsh. Dort kann man Befehle ablegen, die man bei jedem Startup ausführen möchte. Typischerweise betrifft das vor allem das Setzen von Variablen, Aliases, Funktionen, Einstellungen,...

43 Funktionen Standarddateien, die von Shells einbunden werden: Die meisten Shells importieren zu Beginn der Ausführung einige Standarddateien z.b. ~/.bashrc oder ~/.zshrc für interaktive Varianten der bash bzw. zsh. Dort kann man Befehle ablegen, die man bei jedem Startup ausführen möchte. Typischerweise betrifft das vor allem das Setzen von Variablen, Aliases, Funktionen, Einstellungen,... Bemerkung: Je nach Art der Shell und des Aufrufs (interaktiv, nicht interaktiv, loginshell) liest eine Shell oft andere bzw. spezielle Datein an. Login-Shells lesen typischerweise auch profile Dateien wie /etc/profile, ~/.profile (bash) oder /etc/zprofile, ~/.zprofile (zsh) ein. Interaktive Shells lesen üblicherweise die rc -files wie /etc/bashrc, ~/.bashrc usw. ein. Die zsh liest Technische immer Praxis der /etc/zshenv Computersysteme ein.

44 Texteditoren: Um Texte in einer Terminalumgebung zu editieren stehen - neben den üblichen Shellcommands, die wir schon gesehen haben - auch Texteditoren wie, m, emacs oder andere zur Verfügung. Auf allen POSIX-Systemen ist üblicherweise ein -kompatibler Editor installiert.

45 Texteditoren: Um Texte in einer Terminalumgebung zu editieren stehen - neben den üblichen Shellcommands, die wir schon gesehen haben - auch Texteditoren wie, m, emacs oder andere zur Verfügung. Auf allen POSIX-Systemen ist üblicherweise ein -kompatibler Editor installiert. Bemerkung Die Frage nach einem guten Texteditor ist üblicherweise unter Informatikern in schwer religiösen Bereichen angesiedelt und damit die persönliche Wahl jedes Nutzers (siehe Wir beschränken uns hier schlichtweg aus Standardkonformität auf (m) (auch wenn der Autor dieser Folien zufälligerweise überzeugter Vertreter der Nutzerschaft dieses Editors ist).

46 Grundlegends zu : ist ein interaktiver full-screen Editor, der zwei grundlegende Modi kennt: Command Mode: Erlaubt die Eingabe von Befehlen Insert Mode: Editieren (eigentlich nur einfügen!) von Text. kann einfach a oder filename aufgerufen werden.

47 Grundlegends zu : ist ein interaktiver full-screen Editor, der zwei grundlegende Modi kennt: Command Mode: Erlaubt die Eingabe von Befehlen Insert Mode: Editieren (eigentlich nur einfügen!) von Text. kann einfach a oder filename aufgerufen werden. Bemerkung: m erlaubt wesentlich mehr Modi (insbesondere z.b. einen sual Mode um Text zu markieren...).

48 Command Mode: Der Command Mode erlaubt eine Vielzahl von Befehlen, die meist auf einer geoeffneten Datei operieren. Grundlegende Befehle sind: h, i, j, k: Bewegt den Pointer ein Zeichen nach links, unten, oben, rechts. i, a: Wechselt in den Insert Mode beim/nach dem aktuellen Zeichen. o, O: Legt eine neue Zeile unter/über der aktuellen Zeile an und welchselt in den Insert Modus am Anfang der neuen Zeile. u: Undo :e filename <Return>: Öffnet die Dateil filename zum Editieren. :w <Return>: Speichern ( write ). Um in eine (andere) Datei zu speichern kann optional ein Dateiname angegeben werden.

49 Edit Mode: Der Edit Mode dient der Eingabe von neuem Text. Um den Edit Mode wieder zu Verlassen dient Esc-Key.

50 Edit Mode: Der Edit Mode dient der Eingabe von neuem Text. Um den Edit Mode wieder zu Verlassen dient Esc-Key. Bemerkung: Im Edit Mode kann man üblicherweise nicht nagieren. Einige -implementierungen (wie m) erlauben es dennoch mit Hilfe der Pfeiltasten zu nagieren.

51 Nagationsbefehle: 0: Zeilenanfang ^: Erstes nicht-leerzeichen der Zeile $: Zeilenende w,w: Anfang des nächsten Worts (W ignoriert Satzzeichen) e,e: Ende des nächsten Worts (E ignoriert Satzzeichen) b,b: Anfang des vorhergehenden Worts (B ignoriert Satzzeichen) H,M,L: Bewegt Pointer zur ersten, mittleren bzw. letzten Zeile am Bildschirm

52 Nagation II: G: Letzte Zeile in der Datei ng: n-te Zeile in einer Datei

53 L oschen & Kopieren: x: Löscht Zeichen unter Pointer dd: Löscht aktuelle Zeile dw: Löscht das nächste Wort yy: Kopiert aktuelle Zeile yw: Kopiert nächstes Wort p: Einfügen nach Pointer

54 Bemerkung: Die meisten Befehle (wie z.b. x, dd, yy, hijk oder w...) kann eine Zahl vorangestellt werden. In diesem Fall wird der Befehl auf die nächsten n Einheiten ausgedehnt, z.b. löscht 5x die nächsten 5 Zeichen, 3yy kopiert die nächsten 3 Zeilen usw.

55 und die passwd-datei: Möchte man mit die /etc/passwd Datei editieren sollte man den speziellen pw Befehl nutzen. Auf manchen Systemen gibt es auch gr für die /etc/group Datei, also um Gruppen anzupassen.

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

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

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

Technische Praxis der Computersysteme. Technische Praxis der Computersysteme

Technische Praxis der Computersysteme. Technische Praxis der Computersysteme Aufbau Regular Expressions/Reguläre Ausdrücke: Reguläre Ausdrücke sind - ähnlich wie die globbing patterns - Zeichenketten, die andere Zeichenketten beschreiben. Sie sind wesentlich umfangreicher als die

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

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 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

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

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

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

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

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

Ü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

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

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

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

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

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

Der vi Editor. Vortrag im Rahmen des Proseminars Unix Tools an der Technischen Universität München im Sommersemester 2005

Der vi Editor. Vortrag im Rahmen des Proseminars Unix Tools an der Technischen Universität München im Sommersemester 2005 Aller Anfang... ;-) Vortrag im Rahmen des Proseminars Unix Tools an der Technischen Universität München im Sommersemester 2005 Vladislav Lazarov lazarov@in.tum.de 3.05.2005 Vladislav Lazarov lazarov@in.tum.de

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

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

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

Ü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

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 variable HOWTO.txt

shell variable HOWTO.txt HOWTO zu Shell und Umgebungs/Environment Variablen (C) 2006 2017 T.Birnthaler/H.Gottschalk OSTC Open Source Training and Consulting GmbH http://www.ostc.de $Id:,v 1.17 2017/09/11 22:59:53

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

Technische Praxis der Computersysteme 1

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

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

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

Eine Mini-Shell als Literate Program

Eine Mini-Shell als Literate Program Eine Mini-Shell als Literate Program Hans-Georg Eßer 16.10.2013 Inhaltsverzeichnis 1 Eine Mini-Shell 1 1.1 Einen Befehl parsen......................... 2 1.2 Was tun mit dem Kommando?...................

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

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

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

2 Eine einfache Programmiersprache

2 Eine einfache Programmiersprache 2 Eine einfache Programmiersprache Eine Programmiersprache soll Datenstrukturen anbieten Operationen auf Daten erlauben Kontrollstrukturen zur Ablaufsteuerung bereitstellen Als Beispiel betrachten wir

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

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

Shellkurs Shell, SSH, Skripte... Justus Pfannschmidt, Carola Bothe, Samuel Domiks Freie Universität Berlin

Shellkurs Shell, SSH, Skripte... Justus Pfannschmidt, Carola Bothe, Samuel Domiks Freie Universität Berlin Shellkurs Shell, SSH, Skripte... Justus Pfannschmidt, Carola Bothe, Samuel Domiks Freie Universität Berlin 1. November 2018 Inhalt Grundlagen Allgemein Shell-Grundlagen Learning by doing! SSH Shellskript

Mehr

2 Eine einfache Programmiersprache. Variablen. Operationen Zuweisung. Variablen

2 Eine einfache Programmiersprache. Variablen. Operationen Zuweisung. Variablen Variablen Eine Programmiersprache soll Datenstrukturen anbieten Operationen auf Daten erlauben Kontrollstrukturen zur Ablaufsteuerung bereitstellen Variablen dienen zur Speicherung von Daten. Um Variablen

Mehr

Stream EDitor SED und Reguläre Ausdrücke

Stream EDitor SED und Reguläre Ausdrücke Stream EDitor SED und Reguläre Ausdrücke ExactCODE New Thinking Store 11. Mai 2006 Was ist SED? sed steht für Stream EDitor eine Variante des Unix Editors ed und arbeitet auf Streams keine interaktiven

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

Ü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

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

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

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

Outline. 1 Einleitung. 2 Einführung in C. 3 Fortgeschrittenes in C. 4 Einführung in Emacs Lisp. 5 Einführung in Prolog. 6 Formale Semantik

Outline. 1 Einleitung. 2 Einführung in C. 3 Fortgeschrittenes in C. 4 Einführung in Emacs Lisp. 5 Einführung in Prolog. 6 Formale Semantik Outline 1 Einleitung 2 Einführung in C 3 Fortgeschrittenes in C 4 Einführung in Emacs Lisp 5 Einführung in Prolog 6 Formale Semantik Lisp 1958 von John McCarthy erfunden Funktionales Programmierparadigma

Mehr

2 Eine einfache Programmiersprache

2 Eine einfache Programmiersprache 2 Eine einfache Programmiersprache Eine Programmiersprache soll Datenstrukturen anbieten Operationen auf Daten erlauben Kontrollstrukturen zur Ablaufsteuerung bereitstellen Als Beispiel betrachten wir

Mehr

2 Eine einfache Programmiersprache

2 Eine einfache Programmiersprache 2 Eine einfache Programmiersprache Eine Programmiersprache soll Datenstrukturen anbieten Operationen auf Daten erlauben Kontrollstrukturen zur Ablaufsteuerung bereitstellen Als Beispiel betrachten wir

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

Desktop ade: Me and my shell

Desktop ade: Me and my shell Ein Shelldiskurs Desktop ade: Me and my shell Erkan Yanar erkmerk@gmx.de casus belli Warum auf einem Linuxtag mit Schwerpunkt Desktop? Beherrschung der Shell := freie Wahl des Desktops Beherrschung der

Mehr

SHELL WE BEGIN? EINE EINFÜHRUNG IN DIE SHELL. Max Rosin - ANKÜNDIGUNGEN

SHELL WE BEGIN? EINE EINFÜHRUNG IN DIE SHELL. Max Rosin - ANKÜNDIGUNGEN SHELL WE BEGIN? EINE EINFÜHRUNG IN DIE SHELL Max Rosin - mrosin@freitagsrunde.org ANKÜNDIGUNGEN lists.freitagsrunde.org/mailman/listinfo/fopen freitagsrunde.org/techtalks 1 WAS MACHEN WIR HEUTE? Was ist

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

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

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

Einführung in die Kommandozeile

Einführung in die Kommandozeile Einführung in die Kommandozeile...oder auch: Hier hat alles angefangen. Tom Priebe Freitagsrunde Technische Universität Berlin 28. Oktober 2011 Inhalt 1 Einführung Über die Kommandozeile Grundbefehle Parameter

Mehr

Grundlagen der Programmierung

Grundlagen der Programmierung Übung 1: Unix Werkzeuge Robert Sombrutzki sombrutz@informatik.hu-berlin.de Unix Werkzeuge Warum? Diese Frage sollten Sie sich immer mal wieder stellen! Denkbare Antworten Weil Sie diese Werkzeuge immer

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

Fachhochschule Südwestfalen Wir geben Impulse. Kontrollstrukturen und Schleifen in Octave

Fachhochschule Südwestfalen Wir geben Impulse. Kontrollstrukturen und Schleifen in Octave Fachhochschule Südwestfalen Wir geben Impulse Kontrollstrukturen und Schleifen in Octave Einführung Inhalt m-files Script-Files Function-Files Ein- Ausgabe von Variablen oder Ergebnissen For-Schleife While-Schleife

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

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

Übersicht. Einführung in Perl Mustersuche III/ Datentypen II. Mehrzeiliges Matching (1) Mehrzeiliges Matching (2) chomp

Übersicht. Einführung in Perl Mustersuche III/ Datentypen II. Mehrzeiliges Matching (1) Mehrzeiliges Matching (2) chomp Einführung in Perl Mustersuche III/ Datentypen II Universität Stuttgart Institut für maschinelle Sprachverarbeitung http://www.ims.uni-stuttgart.de/lehre/teaching/2003-ws/perl/home.html Heike.Zinsmeister@ims.uni-stuttgart.de

Mehr

Angewandte Mathematik und Programmierung

Angewandte Mathematik und Programmierung Angewandte Mathematik und Programmierung Einführung in das Konzept der objektorientierten Anwendungen zu mathematischen Rechnens WS 2013/14 Operatoren Operatoren führen Aktionen mit Operanden aus. Der

Mehr

U7 POSIX-Prozesse U7 POSIX-Prozesse

U7 POSIX-Prozesse U7 POSIX-Prozesse U7 POSIX-Prozesse U7 POSIX-Prozesse Prozesse POSIX-Prozess-Systemfunktionen Aufgabe 6 U7.1 U7-1 Prozesse: Überblick U7-1 Prozesse: Überblick Prozesse sind eine Ausführumgebung für Programme haben eine

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

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

Praktikum zu LV Ruby: Übung 05

Praktikum zu LV Ruby: Übung 05 Fachhochschule Wiesbaden - Fachbereich Informatik Praktikum zu LV 7328 - Ruby: Übung 05 Arbeiten mit regulären Ausdrücken 07.11.2003 H. Werntges, FB Informatik, FH Wiesbaden 1 Organisatorisches Arbeitsverzeichnis:

Mehr

Vorlesung Skriptsprachen Duale Hochschule Stuttgart Sommersemester Dipl.-Ing. (FH) Volker Schepper

Vorlesung Skriptsprachen Duale Hochschule Stuttgart Sommersemester Dipl.-Ing. (FH) Volker Schepper Vorlesung Skriptsprachen Duale Hochschule Stuttgart Sommersemester 2017 Dipl.-Ing. (FH) Volker Schepper 1 Kommentar Kommentare sollen/müssen unbedingt verwendet werden. Sinnvolle Kommentare verwenden.

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

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

Benutzer- und Rechtevergabe

Benutzer- und Rechtevergabe Benutzer- und Rechtevergabe Gliederung 1) Einführung 2) Rechte 3) Benutzer 4) Editoren Einführung GNU/Linux ist ein Mehrbenutzer- Betriebssystem (d.h. es können mehrere GNU/Linux ist ein Mehrbenutzer-

Mehr

Okt 10, 16 17:29 UNIX/Linux Lösung

Okt 10, 16 17:29 UNIX/Linux Lösung Okt 10, 16 17:29 UNIX/Linux Lösung Seite 1/6 Technische Hochschule Nürnberg Name:... GEORG SIMON OHM Schriftliche Prüfung im Fach Vorname:... "Betriebssystem UNIX/Linux" Matrikel Nr.:... Prüfungstermin:

Mehr

Strings. Daten aus Dateien einlesen und in Dateien speichern.

Strings. Daten aus Dateien einlesen und in Dateien speichern. Strings. Daten aus Dateien einlesen und in Dateien speichern. Strings Ein String ist eine Zeichenkette, welche von MATLAB nicht als Programmcode interpretiert wird. Der Ausdruck 'a' ist ein String bestehend

Mehr

Betriebssysteme I WS 2016/17. Prof. Dr. Dirk Müller. 5 Shell-Programmierung

Betriebssysteme I WS 2016/17. Prof. Dr. Dirk Müller. 5 Shell-Programmierung Betriebssysteme I 5 Shell-Programmierung WS 2016/17 Prof. Dr. Dirk Müller WS 2016/17 2/20 Motivation Shell-Skript Variablen und Parameter Quoting vordefinierte Variablen Parameterübergabe Kontrollstrukturen

Mehr

Technische Praxis der Computersysteme. Technische Praxis der Computersysteme

Technische Praxis der Computersysteme. Technische Praxis der Computersysteme Shell: Alternative zu grafischer Oberfläche. Weniger Abstraktion, dafür mehr Kontrolle Shell: Alternative zu grafischer Oberfläche. Weniger Abstraktion, dafür mehr Kontrolle Eingaben: Befehle & Parameter,

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

Python für Linguisten

Python für Linguisten Python für Linguisten Dozentin: Wiebke Petersen & Co-Dozent: Valentin Heinz 4. Foliensatz bedingte Anweisungen Input, Output Petersen & Heinz Python 1 Vergleichsoperatoren und Boolsche Werte numerische

Mehr

2 Eine einfache Programmiersprache

2 Eine einfache Programmiersprache 2 Eine einfache Programmiersprache Eine Programmiersprache soll Datenstrukturen anbieten Operationen auf Daten erlauben Kontrollstrukturen zur Ablaufsteuerung bereitstellen Als Beispiel betrachten wir

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

Zweiter Teil des Tutorials. Workspace M-files Matrizen Flow Control Weitere Datenstrukturen Gemeinsames Beispiel erarbeiten

Zweiter Teil des Tutorials. Workspace M-files Matrizen Flow Control Weitere Datenstrukturen Gemeinsames Beispiel erarbeiten Zweiter Teil des Tutorials Workspace M-files Matrizen Flow Control Weitere Datenstrukturen Gemeinsames Beispiel erarbeiten Workspace Im Workspace sind die Variablen mit ihrem jeweiligen Wert gespeichert.

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

6 Ein- und Ausgabe. Bisher war unsere (Bildschirm-) Ausgabe leichtflüchtig (

6 Ein- und Ausgabe. Bisher war unsere (Bildschirm-) Ausgabe leichtflüchtig ( 6 Ein- und Ausgabe Bisher war unsere (Bildschirm-) Ausgabe leichtflüchtig ( Drucken war hoffnungslos übertrieben); heute lernen wir, wie wir die Ergebnisse unserer Programme abspeichern können, um sie

Mehr

Python Intro I. Vorsemesterkurs Informatik Praktischer Teil WS 2013/14. 1.Oktober Vorkurs Informatik - WS 2013/14

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

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

Sep 25, 18 8:36 UNIX/Linux Lösung

Sep 25, 18 8:36 UNIX/Linux Lösung Sep 25, 18 8:36 UNIX/Linux Lösung Seite 1/6 Technische Hochschule Nürnberg Name:... GEORG SIMON OHM Schriftliche Prüfung im Fach Vorname:... "Betriebssystem UNIX/Linux" Matrikel Nr.:... Prüfungstermin:

Mehr

Anweisungen in Python

Anweisungen in Python Sommersemester 2007 1 if 2 elif 3 while 4 for 5 Schleifenabbruch Blockbildung Blockbildung durch Einrücken Keine Klammerung Empfehlungen Leerzeichen verwenden 4 Leerzeichen einrücken Unterstützenden Editor

Mehr

Unix/Linux Grundlagen für Einsteiger

Unix/Linux Grundlagen für Einsteiger Unix/Linux Grundlagen für Einsteiger Seminarunterlage Version: 6.08 Version 6.08 vom 25. Juli 2016 Dieses Dokument wird durch die veröffentlicht.. Alle Rechte vorbehalten. Alle Produkt- und Dienstleistungs-Bezeichnungen

Mehr

PostScript -Sprache. Frank Richter

PostScript -Sprache. Frank Richter PostScript -Sprache Frank Richter 27.01.2003 Stack-Operationen exch vertauscht die zwei obersten Stackelemente x y exch => y x dup dupliziert oberstes Stackelement x dup => x x pop löscht oberstes Element

Mehr

1.103 Grundlagen der Dateibearbeitung mit vi

1.103 Grundlagen der Dateibearbeitung mit vi Copyright ( ) 2009 by M.Peichl. This work is licensed under the Creative Commons Attribution-Noncommercial-Share Alike 2.0 Germany License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/2.0/de/

Mehr

Programmieren Vorkurs

Programmieren Vorkurs Programmieren Vorkurs Input/Output, If, Bedingungen Thole Goesmann, 10.10.2018 Über mich Thole Goesmann Studiere Mathematik und Informatik HiWi am Institut für Anwendungssicherheit gewähltes Mitglied im

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

Ü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

Deshalb ist hello + world = 0. Umgekehrt gilt das Gleiche, weshalb 8 plus 3 gleich 83 ist. Dies ist in Zeile 5 in Terminal 2 gezeigt. In der Regel sol

Deshalb ist hello + world = 0. Umgekehrt gilt das Gleiche, weshalb 8 plus 3 gleich 83 ist. Dies ist in Zeile 5 in Terminal 2 gezeigt. In der Regel sol So nützlich wie Variablen in der Mathematik sind, um z.b. Gleichungen eine allgemeine Gültigkeit zu verleihen, so nützlich sind sie auch bei der Programmierung. In dieser Ausgabe möchte ich Ihnen die Verwendung

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

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