Bioinformatik für Biochemiker

Ähnliche Dokumente
Bioinforma1k für Lebenswissenscha;ler

SCI Linux Einführung

Einführung in die Angewandte Bioinformatik

X Anmelden am System. X System herunterfahren. X Grundlegendes zur Shell. X Das Hilfesystem. X Dateioperationen. X Bewegen im Verzeichnisbaum

ATB Ausbildung Technische Berufe Ausbildungszentrum Klybeck

Material zum Grundlagenpraktikum ITS. eine kleine Linux-Befehlsreferenz. Stand: Oktober 2007 zusammengestellt von: Cornelia Menzel Version 1.

Dateien und Verzeichnisse

Gibt Daten im erweiterten Format aus. Dies beinhaltet die Angabe von Zugriffsrechten, Besitzer, Länge, Zeitpunkt der letzten Änderung und mehr.

Literatur. Einführung in Unix. Login. Passwort. Mag. Thomas Griesmayer. Benutzererkennung und Passwort Case-Sensitiv Prompt

Linux-Befehlsreferenz

Linux I II III Res/Pro WN/TT Theorie Terminal Ein- und Ausgabe. Linux I. 1 Linux I. Theorie Terminal Ein- und Ausgabe. Ressourcen-Vorkurs

VWA Rhein-Neckar Dipl.-Ing. Thomas Kloepfer. Kommunikation I (Internet) Übung 1 Telnet und FTP

Vorkurs Linux Grundlagen

Übung 1: Wichtige Kommandos unter Linux

LINUX Gesamtmitschrift

Einführung in das wissenschaftliche Rechnen

Linux Grundlagen. Wolfgang Scheicher 20. Mai Allgemeines Bootvorgang Verzeichnisstruktur... 2

vorneweg: Auch unter Unix/Linux gibt es komfortable grafische Benutzerschnittstellen ;)

Übung: Kennenlernen der Linux-Benutzeroberfläche

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

Literatur. Einführung in Unix. Login. Passwort. Mag. Thomas Griesmayer. Benutzererkennung und Passwort Case-Sensitiv Prompt

Verzeichnisse unter Linux

LAMP HowTo (Linux Apache MySQL PHP) Zugriff per SSH auf den Server. Servername: gyko.no-ip.info (Lokal: )

Tutorium 1 Systemadministration 2 - Linux Universität Hildesheim

Einführung Wissenschaftliches Rechnen. René Lamour. Sommersemester 2015

Computer & GNU/Linux Einführung Teil 1

Arbeiten mit Linux und an der Kommandozeile

Computer Algebra Plan der Vorlesung. erstes Drittel: linux, emacs, L A TEX zweites Drittel: Sage als Taschenrechner letztes Drittel: Python für Sage

Rechnereinführung WS 09/10

Password Depot für Android

Linux-Einführung WS 2010/2011

Übung 4: Schreiben eines Shell-Skripts

1 Linux-Befehlsübersicht

Praktikum RO1 Einführung Linux / Ubuntu / Bash

Eprog Starthilfe. 5. Oktober Einleitung 2

Zip Manager für Nokia Communicator

Übung: Entwickeln eines Shell-Skripts

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

Dateisystem 2, Suchen & Finden, Manpages

Archivieren und Komprimieren, Globs

Eine kleine Einführung in die BASH (Bourne again Shell) Part 1 Die Grundbefehle einer Shell

FTP. Backup. noch ein paar Skripte Kylix-Installation. freischalten automatischer Upload Windows-Client. Archivieren Mirror-Verfahren Clonen

2.Übung Systemsoftware (SYS) Hochschule Mannheim

Betriebssysteme UNIX/Linux Übungsthema 1 Einführung in UNIX/Linux. Dirk Wenzel Dr. Jörg Gruner

Übungspaket 2 Erste Kontakte mit dem PC

Debian GNU/Linux. Unix Grundlagen und Betrieb. Christian T. Steigies

L A TEX, Linux, Python

Systemprogrammierung I - Aufgaben zur Erlangung der Klausurzulassung für Informatiker und Wirtschaftsinformatiker

Kommandozeilen effizient nutzen und verstehen

Zugriff zum Datenaustausch per scponly

Das CIP der Mathematik

cs106 Informatiklabor Teil 1: Java-Installation

Unix Grundlagen (Teil 1.b)

Kommandos im Unix-Grundkurs Digicomp-UXE. Inhalt

Nützliches unter UNIX...

UNIX. Linux. UNIX Derivate, die wichtigsten. Free BSD (Open) Solaris MacOS X Linux. UNIX Dateisystem, wichtige Ordner.

Informatik I - Einstiegskurs

Übertragen von Schulwebseiten auf musin.de

Einführung für Linux/UNIX-Anfänger

Die Linux-Konsole, die Bash, das Terminal, die Kommandozeile, die Shell

Update Messerli MySQL auf Linux

ELPA view Stand:

1 Vorbemerkungen. 1.1 Vorraussetzungen und Ziele. 1.3 Homepage. 1.2 Übungsaufgaben. 1.4 Arbeiten am Computer. Es sind keine Vorkenntnisse nötig

Sage Start Dateiablage Anleitung. Ab Version

Einführung Unix Shell

Grundlagen der Kommandozeile unter Unix/Linux. Dr. Kerstin Puschke September 2009

Objektorientiertes Programmieren mit Suse Linux

Datei-Archive (zip-dateien) packen und entpacken mit FilZip Eine Anleitung für Mitarbeiter/innen

Unix Grundlagen (Teil 1)

a) Archivierung der Dokumente auf externes Speichermedium

Unix Grundlagen. - ii - Ambit Professional Seminar Series. Autor: Prof. J. Anton Illik Diplom-Informatiker

Die Architektur von UNIX/Linux- Betriebssystemen. Mag. Lukas Feiler, SSCP

Übungsblatt A zu Linux

Grafische Oberfläche, Shell Teil 4 Linux-Kurs der Unix-AG

Kurs 6108 Programmierkurs C++ Wintersemester 2001/02. Prof. R. Schrader. Vorlesung freitags 15:15 16:45 Uhr

GDI-Knoppix Erste Schritte. Werner Siedenburg werner.siedenburg@student.fh-nuernberg.de Stand:

AplusixEditor : Editor für Aplusix 3 Benutzerhandbuch

Installation Messerli MySQL auf Linux

GNU/Linux Eine Einführung Jan Tobias Mühlberg. Die Idee

Installation Messerli MySQL auf MAC OS X

Computer & GNU/Linux Einführung Teil 1

an Hand eines Beispiels Konsole

Archivieren und Komprimieren, SSH

Grundlegende Kommandos unter UNIX / LINUX

cat more less tail head

Technische Praxis der Computersysteme

Werkzeuge der Informatik (CS102) Thema: Login, Desktop, Filesystem

Wichtige UNIX Kommandos

Shell für Anfänger Kurzüberblick über die häugsten Befehle

Versionsverwaltung mit Mercurial für Einsteiger

Backup und Datensicherung von Plone-Systemen. Vortragender: Christian Becker

1) JAVA JRE auf der QNAP Box installieren

LINUX-EINSATZMÖGLICHKEITEN... 2 INIT - RUNLEVELS... 2 MODULE... 2 BENUTZER UND GRUPPEN... 3 DATEIEN UND VERZEICHNISSE... 4 RECHTE... 4 NETZWERK...

Installationsanleitung zum QM-Handbuch

Allgemein: Einführung: Das Betriebssystem Linux. Aufbau des Betriebssystems

4 l Springer Vieweg. Keine Angst. vor Linux/Unix. Unix-Anwender. Ein Lehrbuch für Linux- und. Christine Wolfinger

Remaster-Kit Anleitung von Carsten Rohmann und Leszek Lesner

Übungen zur Vorlesung. Betriebssysteme

A Anhang: Unix, Editor und CIP-Pool

MS-DOS 5.0. Wirkungsweise: Liefert Online-Informationen zu den Befehlen von MS-DOS 5.0

Transkript:

Bioinformatik für Biochemiker Oliver Kohlbacher WS 2009/2010 Abt. Simulation biologischer Systeme WSI/ZBIT, Eberhard Karls Universität Tübingen Übersicht Unix Grundkonzepte: Betriebssystem, Shell, GUI Allgemeines Unix-Kommandos Hilfe? Verzeichnisse Dateien Anzeigen, Löschen, Verschieben & Co Editieren von Dateien Archive 2 Betriebssystem, Shell und GUI Jedes Programm (Applikation, Befehl ) braucht eine Schnittstelle zum Rechner Unterste Schnittstelle: Betriebssystem Betriebssystem stellt Applikationen (Programmen, Befehlen ) Grundfunktionalität zur Verfügung Verwaltung von Dateien Zugriff auf Benutzerdaten Programm Betriebssystem Rechner (Hardware) 1

Shell Die Shell ist eine Applikation, die interaktives Ausführen von anderen Applikation ermöglicht Ist Vorgänger der GUI Verbreitete Varianten: TCSH, BASH Dient nicht nur zum Ausführen von Programmen Bietet eigene Funktionalität (sog. Builtins) Programm (z. B. Shell) Betriebssystem Rechner (Hardware) Graphische Benutzeroberfläche (GUI) GUI (Graphical User Interface) ist Oberbegriff für alle graphischen Benutzeroberflächen In diesem Zusammenhang: GUI als graphische Shell GUI ist ebenfalls ein Programm, das oberhalb der Betriebssystem- Ebene arbeitet Verbreitet: Windows, Aqua, KDE, Gnome Programm (z. B. GUI) Betriebssystem Rechner (Hardware) Von Hackern und Mausschubsern Mausschubser mouse pusher A person that prefers a mouse over a keyboard; originally used for Macintosh fans. The derogatory implication is that the person has nothing but the most superficial knowledge of the software he/she is employing, and is incapable of using or appreciating the full glory of the command line. http://users.ipfw.edu/bingi/height%20of%20revenge.gif http://www.retrologic.com/jargon/m/mouse-pusher.html http://www.holz-toys.co.uk/asps/uploads/big/51-1.jpg 2

Von Hackern und Mausschubsern Richtige Programmierer http://www.quantrimang.com/images/hacker.gif http://www.joe-ks.com/archives_jan2005/compuguy.jpg Unix-Kommandos Kommandos werden in einer Shell ausgeführt (in der Eingabeaufforderung) Kommando ist ein Programm! Programme brauchen manchmal zusätzliche Informationen, um zu wissen, was sie machen sollen Diese Informationen werden dem Kommando als Parameter mitgegeben (Optionen) Optionen werden an der Kommandozeile durch Leerzeichen getrennt Beispiel: Zum Kopieren von Dateien muss das Programm cp wissen, welche Datei kopiert werden soll und wohin cp seq.fasta seq2.fasta legt eine Kopie von seq.fasta unter dem Namen seq2.fasta an Kommandos und Optionen Welche Parameter ein Programm beim Aufruf akzeptiert oder benötigt, hängt ganz vom Programm ab Der Programmierer legt diese Parameter selbst fest, sie sind in der Regel in der Dokumentation des Programms beschrieben Auch für die Standard-Unix-Kommandos gibt es diese Dokumentation, die in Form der Manpages am Rechner jederzeit abrufbar ist (mehr dazu später) Das Kommando cp z.b. benötigt mindestens zwei Parameter: die Dateinamen für Quelle und Ziel des Kopierens 3

Typographie Der Übersichtlichkeit halber ist alles, was Sie in den Rechner eintippen können, insbesondere Namen von Programmen und Parameter in Courier gesetzt Beachten Sie, dass jedes Betriebssystem außer Windows Groß- und Kleinschreibung unterscheidet! Beachten Sie auch die Leerzeichen! Parameter für Unix-Kommandos die vom Benutzer festzulegen sind, werden dabei in spitzen Klammern gesetzt: cp <Quelldatei> <Zieldatei> Wenn Sie dieses Kommando einsetzen wollen, müssen Sie für Quelldatei und Zieldatei natürlich sinnvolle Werte angeben (ohne spitze Klammern!) cp seq.fasta seq2.fasta Prompt/Eingabeaufforderung Der Prompt (Eingabeaufforderung) ist die Ausgabe, mit der die Shell dem Benutzer ihre Bereitschaft signalisiert Diese Ausgabe ist frei konfigurierbar Oft wir der Rechnername, der Benutzername und das aktuelle Verzeichnis ausgegeben Am blinkenden Cursor hinter dem Prompt können nun beliebige Kommandos eingegeben werden Während ein Befehl ausgeführt wird, akzeptiert die Shell keine weiteren Befehle Eine Shell auf cbioinf20 Cursor Prompt: [Benutzername@Rechnername Arbeitsverzeichnis]$ 4

Unix-Kommandos: ls Wichtigster Befehl überhaupt: ls (LiSt) ls zeigt den Inhalt des aktuellen Verzeichnisses an ls akzeptiert eine Reihe von Kommandozeilenparametern (Optionen), die die Ausgabe bestimmen ls l zeigt Details der Dateien (z.b. Größe in Byte) an ls zeigt aber nicht alles: Dateien können versteckt werden, indem ihr Name mit. beginnt. Diese Dateien werden nicht angezeigt. Anzeigen von allen (also auch versteckten Dateien) geht durch Angabe der Option -a für ls ls a zeigt Ihnen den gesamten Inhalt des aktuellen Verzeichnisses an ls akzeptiert auch einen oder mehrere Datei- oder Verzeichnisnamen und zeigt dann nur deren Namen/Details an Eine Shell auf cbioinf20 Cursor Kommando Prompt Eine Shell auf cbioinf20 Kommando (ls) Kommandozeilenparameter (-l) Prompt Cursor 5

Unix-Kommandos: cat Jede Datei auf einem Unix-System kann man sich von der Shell aus ausgeben lassen Dazu dient das Kommando cat cat <Dateiname1> [<Dateiname2> ] Das Kommando cat erfordert mindestens einen Parameter (einen Dateinamen), man kann aber auch mehrere Dateinamen angeben (beliebig viele), die dann nacheinander ausgegeben werden Der erste Dateiname ist ein notwendiger Parameter, die weiteren Dateinamen sind optional und werden in der Dokumentation üblicherweise in eckigen Klammern angegeben Beim Aufruf sind diese eckigen Klammern natürlich nicht mit einzugeben Beispiele: cat seq.fasta cat seq.fasta seq2.fasta Unix-Kommandos: cat Ausgabe der Datei ist das natürlich nur für Dateien, die lesbaren Text enthalten sinnvoll Ausgabe einer Bilddatei, einer Musikdatei oder des Maschinencodes eines Programms ist nicht sinnvoll und führt in der Regel nur zu wirrem Zeichensalat Unix-Kommandos: mv Umbenennen und Verschieben von Dateien ist mit dem Kommando mv (MoVe) möglich Verwendung ist analog zur Verwendung von cp: mv <Quelle> [<Quelle2> [ ]] <Ziel> wobei Quelle der alte Dateiname/-ort und Ziel der neue Dateiname/-ort ist Ist Ziel ein (existierendes) Verzeichnis, so wird die Datei unter Beibehaltung des Namens in dieses Verzeichnis verschoben Mit mv kann man auch mehrere Dateien gleichzeitig in ein Verzeichnis verschieben. Eine Umbenennung ist natürlich nur für eine Datei gleichzeitig möglich. Beispiel: mv seq.fasta hev.fasta benennt die Datei seq.fasta nach hev.fasta um mv hev.fasta seq2.fasta Sequenzen verschiebt hev.fasta und seq2.fasta aus dem aktuellen Verzeichnis in das Unterverzeichnis Sequenzen 6

Umleitung Die Ausgabe eines Kommandos kann mit Hilfe von > in eine Datei umgeleitet werden, z.b. um sie später genauer betrachten zu können Das Kommando ls l > ls.txt lenkt so die Ausgabe in die Datei ls.txt um Existiert ls.txt, so wird der Inhalt überschrieben Existiert die Datei nicht, wird sie neu angelegt Die Ausgabe erscheint nicht auf dem Bildschirm Das Umleitungszeichen >> funktioniert analog zu >, nur dass die Ausgabe an die Datei angehängt wird, statt sie zu überschreiben Mit Hilfe der Umlenkung kann man auch die Inhalte mehrerer Dateien aneinander hängen: cat a.txt b.txt > c.txt fügt die Inhalte von a.txt und b.txt zu c.txt zusammen Umleitung Wildcards Oft möchte man eine Aktion auf viele unterschiedliche Dateien ausdehnen, ohne sie explizit angeben zu müssen Die Shell bietet dazu so genannte Wildcards an Wildcards sind Muster, die die Shell durch alle zum Muster passenden Dateinamen ersetzt * steht dafür für einen beliebigen Substring? steht für ein beliebiges Zeichen Beispiel: cat *.fasta gibt alle Dateien im aktuellen Verzeichnis aus, die auf.fasta enden cat seq?.fasta gibt alle Dateien im aktuellen Verzeichnis aus, deren Namen an Stelle des Fragezeichens ein beliebiges Zeichen enthält, also etwa seq1.fasta, seqa.fasta, seq9.fasta nicht jedoch seq.fasta oder seq11.fasta 7

RTFM: Read The F***ing Manual! Hilfe-Funktion der verschiedenen Unix-Derivate heißt man man ist die Abkürzung für Manual Für die meisten gängigen Unix-Befehle befindet sich eine Anleitung in diesem elektronischen Manual Leider nicht für alle anderen Applikationen der Fall (Faulheit der Programmierer, Installationsprobleme, ) Man-Page wird in sogenanntem Pager angezeigt Blättern mit der Leertaste, verlassen mit q ( quit ) Aufrufen einer Man-Page Aufrufen einer Man-Page 8

Aufrufen einer Man-Page Aufrufen einer Man-Page Dateisysteme unter Unix Benutzer haben ein Zuhause, das so genannte Home-Verzeichnis oder kurz Home Entspricht dem Verzeichnis Eigene Dateien der neueren Windows-Versionen Nach dem Öffnen einer Shell befinden Sie sich in Ihrem Home Dort legen Sie Ihre Dateien und Unterverzeichnisse an 9

Hierarchisches Dateisystem Gängige Betriebssysteme verwenden hierarchische Dateisysteme zur Speicherung ihrer Daten Ablage der Dateien erfolgt in ein hierarchisch ineinander geschachtelten Ordnern (Verzeichnissen) Bekannt vom Windows-Explorer Einrückung entspricht tieferer Hierarchiestufe Hierarchisch höher stehende Verzeichnisse enthalten die jeweils eine Stufe tiefer liegenden Verzeichnisse und Dateien Wechseln zwischen Verzeichnissen Was ist denn eigentlich das aktuelle Verzeichnis? Im Explorer: Das grau hinterlegte In der Shell: das, das mit pwd angezeigt wird Wie kommt man dahin? Explorer: Doppelklick Shell: cd Relative Pfade Dateien oder Verzeichnisse, die nicht im aktuellen Verzeichnis liegen, kann man über Pfade bezeichnen Befinden wir uns im Verzeichnis bioinfo, so kann man auf die Datei seq.fasta, die sich in Uebung02 befindet, über Uebung02/ seq.fasta zugreifen Uebung02/ ist dabei der Pfad zur Datei, also die Abfolge der Ordner die durchlaufen werden müssen, um zur Datei zu gelangen Diese können beliebig verschachtelt sein, z.b.: bioinfo/uebung4 Pfade die nicht mit / (slash) beginnen, sind so genannte relative Pfade: sie sind relativ zum aktuellen Verzeichnis 10

Unix-Kommands: cd und pwd Das Kommando pwd (print working directory) gibt das aktuelle Verzeichnis aus und erlaubt Ihnen eine Standortbestimmung, falls Sie sich in den Untiefen des Dateisystems verlaufen pwd Das Kommando cd ist das Gegenstück und erlaubt es Ihnen, das aktuelle Verzeichnis zu wechseln cd <Pfad> Das Verzeichnis zu dem Sie wechseln muss natürlich existieren In das übergeordnete Verzeichnis ( eins hoch ) wechseln Sie mit cd.. Wechseln zwischen Verzeichnissen / bibc bin lib src data common Uebung02 Baum /bibc/data/uebung02/baum/wurzel 11

Spezielle Pfade Unix kennt spezielle Verzeichnisnamen:. ist das aktuelle Verzeichnis.. ist das Verzeichnis eine Ebene höher ~ ist Ihr Home / ist das Urverzeichnis (auch Wurzel, root), unter dem alle anderen Verzeichnisse liegen (siehe letzte Folie) Ein Verzeichnisname (Pfad) oder Dateiname, der mit / (slash) anfängt ist ein sogenannter absoluter Pfad, da er einen exakt definierten, einzigartigen Ort angibt Pfade oder Dateinamen, die nicht mit / anfangen sind relativ, nämlich relativ zum aktuellen Verzeichnis! Spezielle Pfade Verwenden von Verzeichnissen Verzeichnisse ( Ordner ) sind praktisch, um Ordnung in seinem Heimatverzeichnis zu halten Man kann beispielsweise Verzeichnisse anlegen für die Ergebnisse einer Übung Wichtige Befehle für den Umgang mit Verzeichnissen: cd <Pfad> wechselt in ein Verzeichnis mkdir <Pfad> legt ein Verzeichnis an rmdir <Pfad> löscht ein (leeres!) Verzeichnis 12

Verwenden von Verzeichnissen Umgang mit Dateien Dateien sind die Behälter für Daten Kennen Sie alle aus der Windows-Welt Befehle für den Umgang mit Dateien im Dateisystem: touch <Name> [<Name2> [..]] legt leere Dateien an rm <Name1> [<Name2> [ ]] (ReMove) löscht Dateien cp <Quelle> [<Quelle2> [ ]] <Ziel> (CoPy) Kopiert Dateien mv <Quelle> [Quelle2> [ ]] <Ziel> (MoVe) Verschiebt Dateien/Benennt Dateien um Achtung: Löschen kann NICHT rückgängig gemacht werden! Wahlspruch: Think before you type! Umgang mit Dateien cat zeigt die Inhalte von Dateien zwar an, wartet aber bei der Anzeige nicht auf den Benutzer, so dass längere Dateien einfach an Ihnen vorbeirauschen Sie können sich den Inhalt von Dateien in der Shell auch interaktiv anzeigen lassen Dazu verwenden Sie den Pager, den Sie auch schon von der Man-Page kennen more <Datei1> [<Datei2> [ ]] zeigt Inhalte in der Shell an less <Datei1> [<Datei2> [ ]] ist die neuere (und etwas mächtigere) Variante von more: Kann auch rückwärts scrollen 13

Editieren von Dateien Es gibt eine ganze Reihe von Editoren: gedit, nedit, emacs, vi, joe,... Manche Editoren haben ein graphisches Interface, andere sind reine Shell-Editoren und komplett durch die Tastatur zu bedienen Zwischen den verschiedenen Konzepten herrschen regelrechte Glaubenskriege (GUI/ TUI, vi/emacs,...) Wir beschränken uns hier auf gedit Editoren: gedit Editoren: gedit 14

Editoren: gedit Editoren: gedit Editoren: gedit 15

Archive (ZIP und TAR) ZIP-Dateien sind sog. Archive (=Dateien, in die andere Dateien gepackt worden sind) Weitverbreitetes Format, praktisch um ein Bündel von Dateien zu schnüren Platz sparend durch Komprimierung TAR ist ebenfalls ein Archiv-Format Weit verbreit in der Unix-Welt Verwendung von Archiven Das Kommando tar dient zum Erzeugen und Auspacken von Archiven tar akzeptiert sehr, sehr viele Optionen, die Sie der Manpage entnehmen können Für den Hausgebrauch reichen meist die folgenden Kommandos: tar zxf <Archiname> packt ein komprimiertes Archiv (meist erkennbar an der Endung.tar.gz oder.tgz) im aktuellen Verzeichnis aus tar zcf <Archnivname> <Datei1> [<Datei2> [ ]] erzeugt ein komprimiertes Archiv mit dem Namen Archivname und fügt dort die Dateien Datei1, 2, ein. Anstelle von Dateinamen können auch ganze Verzeichnisse angegeben werden, die dann inklusive der Unterverzeichnisse eingepackt werden. tar ztf <Archivname> zeigt die Inhalte des Archivs an ohne es auszupacken. Literatur + Links RTFM, RTFM, RTFM! Üben, üben, üben Gibas, Jambeck: Einführung in die praktische Bioinformatik, O Reilly, 2002 16