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

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

Bash-Skripting Linux-Kurs der Unix-AG

Bash-Skripting Linux-Kurs der Unix-AG

Arzu Sanli Ibrahim Canakci

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

Shell-Scripting Linux-Kurs der Unix-AG

Shell-Scripting Linux-Kurs der Unix-AG

Linux und Shell-Programmierung Teil 5

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

Skripte. Beispiel. M. Fyta Computergrundlagen 73/93

Shell-Scripting Linux-Kurs der Unix-AG

Bash-Scripting Linux-Kurs der Unix-AG

Einleitung Entwicklung in C Hello-World! Konstrukte in C Zusammenfassung Literatur. Grundlagen von C. Jonas Gresens

Technische Praxis der Computersysteme 1

Shell-Scripting Linux-Kurs der Unix-AG

Linux und Shell-Programmierung Teil 6

Vorbemerkung. Allgemeines zu Shell Scripts. Aufruf. Einfaches Beispiel

UNIX Shell-Programmierung

Shell-Programmierung

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

105.1 Shell, Scripting

Übersicht Shell-Scripten

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

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

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

Computer & GNU/Linux Einführung Teil 4

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

Arithmetik in der tcsh

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

Arrays. Arrays werden verwendet, wenn viele Variablen benötigt werden. Der Vorteil in Arrays liegt darin, dass man nur eine Variable deklarieren muss

Vorlesung Unix-Praktikum

Vorlesung Unix-Praktikum

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

Übung: Entwickeln eines Shell-Skripts

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

Shellprogrammierung. Einführung in Linux. Antonia Blanke. Operatoren Schleifen Case Funktionen Kommandos Signale Stringmanipulation

1.1 Shellprozeduren. 1.2 einfachste Skript Beispiele

VBA-Programmierung: Zusammenfassung

Einführung Unix Shell

if ( Logischer Operator ) { } else { Anweisungen false

12 == 12 true 12 == 21 false 4 === 7 true 4 === "vier" false 4 === 4.0 false 12!= 13 true 12!== 12 false 12!== 12.0 true. 1 < 3 true 3 < 1 false

Angewandte Mathematik und Programmierung

Kurze Einführung in die Programmiersprache C++ und in Root

Unix-Grundkurs 1. Thema heute: Shell-Skripten

4 Schleifen -= Entstanden unter Excel 2003 =-

zu große Programme (Bildschirmseite!) zerlegen in (weitgehend) unabhängige Einheiten: Unterprogramme

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

Programmierkurs Java

Shell-Programmierung fur Unix und Linux

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

Steuerungsstrukturen. Ablaufsteuerung der PL/SQL Ausführung. IF Anweisungen. Einfaches IF

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

zu große Programme (Bildschirmseite!) zerlegen in (weitgehend) unabhängige Einheiten: Unterprogramme

Java Anweisungen und Ablaufsteuerung

RO-Tutorien 3 / 6 / 12

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

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

Einführung in den Einsatz von Objekt-Orientierung mit C++ I

RO-Tutorien 17 und 18

Java I Vorlesung Imperatives Programmieren

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

IoT-Werkstatt Das Internet der Dinge anfassbar machen Algorithmisches Denken

Einführung in die Programmierung mit VBA

Vorlesung 4: Shell-Scripting (Teil 1)

Mul$media im Netz Wintersemester 2012/13. Übung 01

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

Programming 101. Carl Herrmann IPMB & DKFZ

Programmierwerkzeuge unter Unix

1 Bedingte Anweisungen. 2 Vergleiche und logische Operatoren. 3 Fallunterscheidungen. 4 Zeichen und Zeichenketten. 5 Schleifen.

(Aufgaben zu Wertzuweisungen siehe Vorlesungsbeilage S. 49)

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

Programmieren in C/C++ und MATLAB

Übung 2 - Betriebssysteme I

Java: Eine kurze Einführung an Beispielen

Java Ablaufsteuerung (Beispiele)

Programmieren mit Python

Informatik I Übung, Woche 40

Einführung in die Programmierung für NF. Übung

Inhaltsverzeichnis. Vorwort.11

Linux Prinzipien und Programmierung

Shell-Programmierung für Unix und Linux

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

Grundlagen der Programmierung

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

Crashkurs Python und Sage U23 Krypto-Mission

FACHHOCHSCHULE MANNHEIM

Martin Unold INFORMATIK. Geoinformatik und Vermessung

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

III.1 Prinzipien der funktionalen Programmierung - 1 -

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

m-files sind Folgen von MATLAB-Anweisungen oder Daten-Files.

Perl-Praxis. Dateien und Daten. Jörn Clausen

Systemverwaltung mittels Skripts

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

Einführung in die Kommandozeile

4.Grundsätzliche Programmentwicklungsmethoden

Transkript:

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 von Skripten 2. Die korn-shell im Detail 2.1 Prompts 2.2 History 2.3 Variablen und Datentypen 2.4 Umgebungsvariablen 2.5 Parameter 3. Grundlagen der Programmierung 3.1 Einfache Ein- und Ausgabe 3.2 Steuerstrukturen und logische Operatoren 3.3 Bedingte Anweisungen 3.4 Schleifen Einführung in Shellskripte mit d. korn-shell Franke, Robert 13.08.2012 1

1. Übersicht: Die korn-shell - 2. Die Kornshell im Detail - 3.Grundlagen der Programmierung Schnittstelle zwischen Nutzer und Betriebssystem Unterschieden wird zwischen Grafischen Benutzeroberflächen(GUI) und Zeichen Orientierten Benutzerschnittstelle (TUI) Shell als Commandline Interpreter der ein Commandline Interface zur Verfügung stellt Einführung in Shellskripte mit d. korn-shell Franke, Robert 13.08.2012 2

1. Übersicht: Die korn-shell - 2. Die Kornshell im Detail - 3.Grundlagen der Programmierung Seit 1982 für Unix System V verfügbar direkte Weiterentwicklung der Burne Shell unter CPL frei Verfügbar und für viele Systeme portiert Shell Language Standard (IEEE Posix 1003.2) Konform Einführung in Shellskripte mit d. korn-shell Franke, Robert 13.08.2012 3

1. Übersicht: Der Weg zum ersten Skript - 2. Die Kornshell im Detail - 3.Grundlagen der Programmierung Handwerkszeug sind ein Texteditor und die korn-shell selbst shebang - Zeile zur Angabe des intepretierenden Programmes Ausführungsberechtigung muss erteilt werden Start mit./scriptname.sh Einführung in Shellskripte mit d. korn-shell Franke, Robert 13.08.2012 4

1. Übersicht: Nutzen und Grenzen - 2. Die Kornshell im Detail - 3.Grundlagen der Programmierung vereinfachen und automatisieren Aufgaben Verbinden bestehende Komponenten um Anwendungen zu erstellen Stellen einfach Kontroll- und Datenspeicherstrukturen zur Verfügung Einführung in Shellskripte mit d. korn-shell Franke, Robert 13.08.2012 5

1. Übersicht - 2. Die Kornshell im Detail: Prompts - 3.Grundlagen der Programmierung dient zur Statusausgabe ksh zeigt beim Start nur als was wir Eingeloggt sind: # = root $ = Standard-User Prompt Definition erfolgt über die Variablen PS1 bis PS4 Bsp: PS1=$USER@$(uname -n)':$pwd: ' export PS1 Einführung in Shellskripte mit d. korn-shell Franke, Robert 13.08.2012 6

1. Übersicht - 2. Die Kornshell im Detail: History - 3.Grundlagen der Programmierung Wiederbenutzung von Befehlen history-befehl zeigt nummerierte Liste der letzten genutzten Befehle Mit r befehlsnummer wird der gewünschte Befehl erneut ausgeführt Befehlsspeicher ist begrenzt und kann mit HISTSIZE=n; export HISTSIZE verändert werden Einführung in Shellskripte mit d. korn-shell Franke, Robert 13.08.2012 7

1. Übersicht - 2. Die Kornshell im Detail: Variablen - 3.Grundlagen der Programmierung Variablen haben einen Datentyp(int, string, etc.) ksh stellt verschiedene Systemvariablen zur Verfügung ($0..{10}, PS1..4) die über den Befehl set eingesehen werden können Initialisierung über my_var=ein_wert Benutzung des Inhalts mit $my_var Zurücksetzen mit unset my_var Einführung in Shellskripte mit d. korn-shell Franke, Robert 13.08.2012 8

1. Übersicht - 2. Die Kornshell im Detail: Datentypen - 3.Grundlagen der Programmierung Datentypen Bestimmen den Inhalt einer Variable Ksh unterscheidet u. A.: integer Variablen (-i), exportierte Variablen (-/+x), readonly Variablen (-r) Deklaration über typeset Bsp: typeset -r -Z -i n=2 Einführung in Shellskripte mit d. korn-shell Franke, Robert 13.08.2012 9

1. Übersicht - 2. Die Kornshell im Detail: Datentypen - 3.Grundlagen der Programmierung Umgebungsvariablen müssen weder initialisiert noch deklariert werden, ihre Inhalte können aber Überschrieben werden Beispiele sind u. A.: RANDOM, LANG, PS1 Viele Umgebungsvariablen sind importiert Einführung in Shellskripte mit d. korn-shell Franke, Robert 13.08.2012 10

1. Übersicht - 2. Die Kornshell im Detail: Parameter - 3.Grundlagen der Programmierung Parameter werden beim Skriptstart übergeben und übernehmen wichtige Steuerund Wertübergabefunktionen Bsp:./myscript.sh -v Die Parameter werden als $0 bis ${nn} übernommen Einführung in Shellskripte mit d. korn-shell Franke, Robert 13.08.2012 11

1. Übersicht - 2. Die Kornshell im Detail: Eingabe / Ausgabe - 3.Grundlagen der Programmierung Grundlage der Interaktion zwischen Programm und Benutzer einfache Ausgabe über echo ergänzend print und printf vorhanden Eingabe über read Standardmäßig erfolgt die Ausgabe auf den Bildschirm, kann aber auch umgelenkt werden Einführung in Shellskripte mit d. korn-shell Franke, Robert 13.08.2012 12

1. Übersicht - 2. Die Kornshel - 3.Grundlagen der Programmierung: Operatoren Generell werden mathematische, vergleichende, zuweisende und logische Operatoren logische und verknüpfende Operatoren sind die Grundlage von Steuer und Kontrollstrukturen Über expr und let lässt sich der Operator Syntax Steuern Einführung in Shellskripte mit d. korn-shell Franke, Robert 13.08.2012 13

1. Übersicht - 2. Die korn-shel - 3.Grundlagen der Programmierung: Bedingte Anweisungen dienen zum erreichen Verschiedener Programmteile bei Unterschiedlichen Bedingungen Fallunterscheidung über if then... elsif then... else... oder case-konstrukt Einführung in Shellskripte mit d. korn-shell Franke, Robert 13.08.2012 14

1. Übersicht - 2. Die Kornshel - 3.Grundlagen der Programmierung: Schleifen Unterscheidung von Kopf gesteuerten und Fuß gesteuerten Schleifen dienen zum wiederholten Ausführen von Befehlen bis zu einer Abbruchbedingung ksh bietet while, until und for-schleifen Einführung in Shellskripte mit d. korn-shell Franke, Robert 13.08.2012 15

1. Übersicht - 2. Die Kornshel - 3.Grundlagen der Programmierung: while Syntaxbeispiel while-schleife while test -n $1 do case $1 in -*) echo option: $1 ;; *) echo Argumente esac shift done Einführung in Shellskripte mit d. korn-shell Franke, Robert 13.08.2012 16

1. Übersicht - 2. Die Kornshel - 3.Grundlagen der Programmierung: until Syntaxbeispiel until-schleife until [[ $answer = yes ]];do print -n please enter \ yes\ : read answer print done Einführung in Shellskripte mit d. korn-shell Franke, Robert 13.08.2012 17

1. Übersicht - 2. Die Kornshel - 3.Grundlagen der Programmierung: for Syntaxbeispiel for-schleife for var in $(ls);do if [[ -d $var ]];then echo $var is a directory else print $var is not a directory fi done Einführung in Shellskripte mit d. korn-shell Franke, Robert 13.08.2012 18

1. Übersicht - 2. Die Kornshel - 3.Grundlagen der Programmierung: for Vielen Dank für die Aufmerksamkeit... Einführung in Shellskripte mit d. korn-shell Franke, Robert 13.08.2012 19