1 / 29

Verzeichnisse und Dateien

Verzeichnisse und Dateien. Meine Dateien. CV.doc. Bilder. Musik. Bild1.jpg. Plan.svg. Hits42.cda. Jam.mp3. Vereinfacht: Eine Datei ist Daten plus Namen. Um diese Dateien hierarchisch zu ordnen, verwendet man Verzeichnisse.

nizana
Download Presentation

Verzeichnisse und Dateien

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Verzeichnisse und Dateien Meine Dateien CV.doc Bilder Musik Bild1.jpg Plan.svg Hits42.cda Jam.mp3 • Vereinfacht: Eine Datei ist Daten plus Namen. • Um diese Dateien hierarchisch zuordnen, verwendet man Verzeichnisse. • Jedes Verzeichnis kann Dateienund wiederum Verzeichnisseenthalten. • In Anlehnung an frühereBüros werden Verzeichnisseauch Ordner (engl. Folders)genannt. • Dadurch ergibt sichein so genannterVerzeichnisbaum(Directory Tree) ->

  2. Verzeichnispfad und Dateinamen CV.doc CV.doc • Zwei Dateien müssen verschiedene Namen haben, • es sei denn, sie liegen in verschiedenen Verzeichnissen • Um eine Datei eindeutig zu identifizieren verwendet man dann den so genannten Pfad • path, Verzeichnispfad, Dateipfad • Im rechten Beispiel gibt es CV.doc zweimal in verschiedenen Verzeichnissen (Pfaden): • Eigene Dateien\CV.doc • Eigene Dateien\Alt\CV.doc • Den Backslash \ nennt man "Pfadtrennzeichen" oder "Path-Separator". Meine Dateien Alt

  3. Windows: Verzeichnisse • Unter Windows (Dateimanager Explorer) sieht der Dateibaum so aus: • Es sieht so aus, als sei der Desktop das oberste Verzeichnis. • In Wirklichkeit wird unter Windows aber alles relativ zu einer Festplatte angesprochen, z.B. • C:\Programme\Winamp\ • D:\Kurs\Einleitung.pdf • Das Trennzeichen ist ein Backslash \.

  4. Linux: Verzeichnisse • Unter Linux (z.B. Dateimanager Konqueror) ist dies anders: • Es gibt tatsächlich nur ein oberstes Verzeichnis: / auch root directory oder Wurzelverzeichnis genannt. • Achtung: der Administrator des Linux-Computers wird auch Root genannt. • Die verschiedenen Festplatten werden dann an unterschiedlichen Stellen in diesen Baum eingebunden (mounted). • Das Trennzeichen ist der Slash/(nicht der Backslash): • /home/oezbek/kurs/einleitung.pdf • /usr/bin/xine

  5. Datei-Namensendungen unter Linux • Unter Windows bestimmt die Dateiendung (File-Extension), welcher Typ von Datei vorliegt. • exe und com sind ausführbar. • dll ist eine Programmbibliothek. • txt, doc, rtf sind Textformate... • Unter Linux ist dieser Zwang gelockert. • Unter Linux gibt es ein spezielles Bit, das anzeigt, ob eine Datei ausgeführt werden darf (eXecute-Flag). • Deshalb sind keine Endungen nötig. • Auf der anderen Seite ist es ohne die Endungen oft schwieriger zu erkennen, was die Datei für einen Typ hat. • Viele Benutzer behalten deshalb Dateiendungen bei. • Im Prinzip gibt es aber keinen Unterschied ob ihr eine Datei hallo oder hallo.txt nennt.

  6. Groß- und Kleinschreibung • Windows unterscheidet nicht • Linux aber schon • Man kann also unter Linux die folgenden Dateien haben: • hallo • Hallo • HALLO • ...und sie sind alle unterschiedlich. • Also Achtung beim Aufrufen von Befehlen und Programmen.

  7. Kommandozeile • Wie viele haben noch Computer kennen gelernt, bei denen die Kommandozeile die Haupteingabeform war?

  8. Ein anderes Paradigma • Als mehrfarbige Bildschirme noch teuer waren und auch die Hardware nicht so leistungsfähig war, verwendete man folgenden Ansatz für die Kommunikation mit dem Rechner: • Der Benutzer bekommt vom Computer einen textuellen Prompt vorgegebenen. • Auf diese Eingabeauforderung antwortet der Benutzer durch Eintippen eines Befehls. • Wird dieser Befehl mit Enter bestätigt, führt der Computer diesen aus und zeigt das Ergebnis der Ausführung an. • Anschließend wartet der Computer wieder auf Eingabe.

  9. Der Terminal-Ansatz • Wenn man noch weiter zurück geht, war es sogar so, dass man einen zentralen Rechner hatte und viele verbundene Bildschirme mit Tastatur. • Diese Bildschirm empfingen Zeichen vom Zentralrechner und zeigten sie an und schickten die Eingabe des Benutzers zurück an den Rechner. • Man nannte diese "dummen" Bildschirme ohne Festplatte und Prozessor auch Terminals. • Dementsprechend werden Programme, die heute die Funktion des Terminals ersetzen, auch als Terminal-Emulatoren bezeichnet.

  10. Vergleich zur graphischen Eingabe • Macht euch klar, dass die Eingabeaufforderung nichts anderes ist, als eine andere Sicht auf das System. • Zugrunde liegen die gleiche Hardware und gleichen Daten. Die meisten Tätigkeiten lassen sich in beiden Welten gut lösen. • Aber es gibt Unterschiede: • Textuelle Befehle kann man kopieren. • Bei Mausklicks ist das schwieriger. • Graphisch lassen sich aber vieleInformationen besser darstellen. • Die Kommandozeile ist linear. • Graphische Oberflächen sind 2D(vielleicht kann man sogar 3D sagenaka Fenster im Hintergrund).

  11. Bereiche, wo die Kommandozeile vorherrscht • Überall dort, wo Aktionen im Dateisystem automatisiert und vom Computer gesteuert werden sollen, hat die Kommandozeile deutliche Vorteile: • Alle Dateien mit Endung htm in Endung html umbenennen. • for f in *.htm; do mv $f `basename $f .htm`.html; done; • Das geht mit graphischen Mitteln nur schwierig bzw. mit speziellen Werkzeugen. • Insgesamt aber verliert die Kommandozeile gegenüber graphischen Oberflächen mehr und mehr an Bedeutung. • Unter MacOS X gibt es z.B. den Automator -> • Unter Windows hat man als Benutzerkaum noch Kontakt mit der "Shell".

  12. Wie komme ich auf eine Kommandozeile? • Windows: cmd steht für command. Die Kommandozeile häufig auch Command Line Interface (CLI) oder Command Shell oder nur Shell genannt.

  13. Linux • Wenn ihr an einem Linuxrechner sitzt, dann heißt ein entsprechendes Programm, welches ein solches Fenster anzeigt: • Konsole (KDE) • Term (kurz für Terminal Emulator) oder auch X-Term • Shell • Darüber hinaus redet man auch gerne von dem Programm, welche die Kommandozeile in dem Fenster verwaltet: • Bash, Csh, Ksh, Zsh, Shell • Ihr könnt an einem Linux-Rechner (auch gerne Linux-Kiste genannt) aber auch STRG+ALT+F1 bis F6* drücken und seht dann Linux ohne graphische Oberfläche (Zurück mit STRG-ALT+F7).

  14. Z.B. Konsole unter KDE

  15. Namensverwirrung • Hier noch mal alle Namen, die alle letztlich oft einfach dafür verwendet werden, die Kommandozeile zu benennen: • Kommandozeile / Command-Line / CMD • Kommandoprompt / Prompt • CLI (Command-Line Interface) • Eingabefenster / Eingabeaufforderung • Terminal Emulator / Terminal / X-Term / Term • Konsole • Alles, was mit Sh wie Shell endet: • Bash, CSh (sprich Cee-Shell), Ksh • Beliebt auch Namen der Windows-Programme und Protokolle: SSH Client, Putty, SSH Shell, Telnet, Hyperterm • Nicht irre machen lassen ;-)

  16. Wie bewegt man sich im Dateisystem alt alp1 alp2 • Angenommen ihr seid im Verzeichnis brueckenkurs. • Wie kommt man nach alt? • cd alt • Wie kommt man nach alp1? • cd uebungsblaetter • cd alp1 • oder • cd uebungsblaetter/alp1 • Wie kommt man von alt nachbrueckenkurs? • cd .. • Wie kommt man von alp1 nach alt? • cd ../../alt(alternativ auch cd ../../alt/../alt) brueckenkurs uebungsblaetter

  17. Die wichtigsten Befehle - Achtung mit <...> • man <befehl> (manual) – Ruft die Hilfe zu einem Befehl auf z.B. • Beispie: man rm • apropos <begriff> – Sucht nach einem Befehl, der den Begriff in der Beschreibung enthält. • Beispiel: apropos remove • Achtung: Da kommt oft zuviel zurück! • Sucht ihr einen Befehl, funktioniert der Befehlapropos remove | grep '(1)' besser • <befehl> --help– Gibt oft eine Minimalhilfe zurück. • cd <verzeichnis> (change directory) - Wechselt in ein Verzeichnis. • cd .. – Wechselt ein Verzeichnis nach oben. Space!! • cd – Wechselt in eurer Heimatverzeichnis.

  18. Mehr Befehle • exit – Loggt euch aus. • rm <Datei> (remove) – Löschen • cp <quelle> <ziel> (copy) – Kopieren • mv <quelle> <ziel> (move) – Bewegen • Mit -r auch jeweils für Unterverzeichnisse. • ls (list) – Listet Dateien im Verzeichnis auf. • less <Datei> – Zeigt eine Datei an (Beenden mit q). • killall <Befehl> – Beendet alle laufenden Versionen des Befehls. • tar -xvzf <Datei>.tar.gz – Datei entpacken. • tar -cvzf <Ziel>.tar.gz <Quelle> – Quelle packen. • unzip <Datei>.zip – Zip-Datei entpacken. • zip <Ziel>.zip <Quelle> – Datei mit Zip-Packen.

  19. Noch mehr • mkdir <Verzeichnis> (make directory) – Verzeichnis anlegen. • rmdir <Verzeichnis> (remove dir) – Verz. löschen. • chmod (change permissions) – Zugriffsrechte auf Dateien ändern. • quota -v – Freien Festplattenplatz anzeigen. • sort – Sortiert die Eingabe. • locate <Name> – Sucht eine Datei in der Dateidatenbank. • find . -iname <Name> – Sucht eine Datei im aktuellen Verzeichnis und dessen Unterverzeichnissen. • grep -r "Text" * – Sucht den Text in allen Dateien im aktuellen Verzeichnis und den Unterordnern.

  20. Uff – Erst einmal verschnaufen! • Was kommt noch? • Editoren • Platzhalter, Jokerzeichen, Wildcards • Weiterleitung von Dateien | Pipes • Rechtevergabe • Sicheres Kopieren zwischen Rechnern (SCP) • Auflistung von früheren Befehlen (Historie) • Wichtigste Tastenkürzel • Sonderzeichen • Seht die folgenden Themen auch als Nachschlagewerk an.

  21. Text-Editoren • Text-Editoren unter Linux sind für Windows-User oft ein Graus! Sie bestehen aus lauter Tastenkombinationen. • joe <Datei> – Öffnet einen einfachen Texteditor: • Beenden STRG+C (funktioniert generell zum Abbrechen) • Hilfe STRG+K H • Speichern STRG+K X • emacs <Datei> – Der Über-Editor (kann Tetris) • Beenden STRG-X C • Abbrechen STRG-G (Achtung: STRG-C funktioniert nicht) • Speichern STRG-X S • vi <Datei> – Der Unter-Editor • Ohne Tutorial nicht zu bedienen. Sorry. Einstieg: man vim • Beenden: ": q !" • Speichern: ": x !"

  22. Platzhalter • Oft ist es umständlich, bei Befehlen alle Dateien einzeln zu benennen. • Zur Vereinfachung dienen so genannte Wildcards. • Aus DOS-Zeiten kennt man *.* = alle Dateien. • Unter Linux geht dies einfach mit *. • rm -rf * löscht alle Dateien ohne Fragen. Vorsicht! ;-) • Was der Computer macht, ist, dass er * durch keins oder eine Reihe von beliebigen Zeichen ersetzt. • Urlaub*.jpg – z.B. Urlaub01.jpg, aber auch Urlaub.jpg • ? = genau ein beliebiges Zeichen • z.B. hallo.??? löscht hallo.txt, hallo.zip aber nicht hallo.html

  23. Pipes – Rohre für Daten • Das ist schon ein fortgeschrittenes Konzept. • Damit leitet man Daten zwischen Dateien und Programmen hin und her. • date > jetzt.txt • Schreibt die Ausgabe des Befehls date (für Datum) in die Datei jetzt.txt und überschreibt den bisherigen Inhalt. • date >> jetzt.txt • Hängt die Ausgabe an die Datei an. • sort -r < jetzt.txt • Verwendet den Inhalt von jetzt.txt als Eingabe für sort. • find . -iname paper | less • Sucht eine Datei mit names paper und leitet das Ergebnis an das Anzeigeprogramm less weiter.

  24. Wer hat das Recht? • Wie bekommt man unter Linux raus, wer auf eine Datei zugreifen darf? => ls -l • Die wichtigen Informationen stehen ganz am Anfang. • Ignoriert das erste Zeichen. • Dann folgen 3 mal 3 Zeichen. • 3 für den Benutzer, 3 für die Gruppe, 3 für alle anderen. • Dabei steht r für Read, w für Write und x für eXecute, d.h. also lesen, schreiben, ausführen. • Ändern könnt ihr das mittels des Befehls chmod • chmod u+x <Datei> = Für den Benutzer ausführbar machen • u = User/Benutzer, g = group/Gruppe, o = other/Andere

  25. Von Rechner zu Rechner • Um von einem Rechner zum nächsten zu gehen: • ssh -l <Benutzername> <Rechnername> • Um Dateien einem anderen Benutzer zu kopieren: • scp <Quelldatei> <Benutzername>@<Rechner>: • scp <Quelldatei> <Benutzername>@<Rechner>:~/ziel/ • Beides mal müsst ihr das Passwort des Benutzers eingeben. • Achtung beim Kopieren! • Es gibt keine Warnung beim Überschreiben

  26. Historie – Was habe ich letztens so getan... • Die Bash-Shell merkt sich alle eure Befehle. • Anzeigen mit less ~/.bash_history • Mit den Pfeiltasten hoch und runter könnt ihr auch direkt zum vorherigen/nächsten Befehl gehen. • Praktisch, wenn man faul beim Tippen ist oder ein ziemlicher komplizierter Befehl einem nicht mehr einfällt. • Mit STRG-R könnt ihr in der History suchen:

  27. Die wichtigsten Tasten-Kombinationen (I) • TAB  = Versucht, eure Eingabe zu vervollständigen! • ENTER  = Ausführen • BACKSPACE  = Zeichen löschen • STRG-D(elete) = nächstes Zeichen löschen (wie Entf) • Auf leerer Zeile => ausloggen • STRG-K(ill) = bis ans Ende der Zeile löschen • STRG-A(nfang) = an den Anfang der Zeile gehen • STRG-E(nde) = an das Ende der Zeile gehen • STRG-S(croll) = Nicht scrollen • STRG-Q(?) = Scrollen wieder anschalten • SHIFT-Seite/Bild/Page = Hoch scrollen. • SHIFT-Seite/Bild/Page = Runter scrollen

  28. Tasten-Kombinationen (II) • PFEIL HOCH  = vorherigen Befehl anzeigen • PFEIL RUNTER  = nächsten Befehl anzeigen • STRG-R(everse Search) = in der Befehls-Historie suchen • STRG-ALT-BACKSPACE = Graphische Oberfläche (KDE, Gnome,  X-Server ) abschießen • STRG-C(ancel) = laufendes Programm abbrechen • STRG-Z(zz) = Programm in den Hintergrund • Zurückholen mit dem Befehl fg (=Foreground) • STRG-Einfg = markierten Text aus der Shell kopieren • SHIFT-Einfg = Text in die Shell kopieren

  29. Die wichtigsten Sonderzeichen • ~ (Tilde) Wird ersetzt durch euer Heimatverzeichnis • & (Ampersand) Programm im Hintergrund starten • | Ausgabe eines Programms an anderes weiterleiten • > Ausgabe wird in Datei geschrieben • >> Ausgabe wird an Datei angehängt • < Eingabe wird aus Datei gelesen • ? Ein beliebiges Zeichen • * Beliebig viele beliebige oder auch kein Zeichen • $ Durch Wert der Umgebungsvariable ersetzen • ' ' Sonderzeichen nicht umwandeln • / Trennzeichen zwischen Verzeichnissen (Linux) • ; Führt Befehle nacheinander aus (rm a.txt; rm b.txt) • . Das aktuelle Verzeichnis (.. = das übergeordnete)

More Related