Arbeiten mit der Shell Teil 1 Linux-Kurs der Unix-AG Benjamin Eberle 4. Mai 2016

Die Komandozeile unter Linux I I

I

Wird als „Shell“ bezeichnet Die Shell ist eines der vielen Programme einer Linux-Distribution Der „Prompt“ zeigt an, dass die Shell auf Befehle wartet I

Benjamin Eberle

benutzer@rechner:~#

Arbeiten mit der Shell Teil 1

4. Mai 2016

2 / 24

Befehle in der Shell Werden eingegeben und mit Enter bestätigt nbenutzer@rechner:~#ls ← Befehl I Ausgabe Arbeitsfläche Dokumente Musik Vorlagen I

Bilder

I

Downloads

Videos

Können Optionen und Argumente haben benutzer@rechner:~#ls |{z} -lh Dokumente/ ← Argument insgesamt 12K Optionen I

Benjamin Eberle

-rwxr-xr-x 1 benutzer gruppe 4K Nov 6 Linux.txt -rwxr-xr-x 1 benutzer gruppe 4K Nov 6 ist.odt -rwxr-xr-x 1 benutzer gruppe 4K Nov 6 toll.ods

Arbeiten mit der Shell Teil 1

4. Mai 2016

3 / 24

Optionen und Argumente I I

Sind nicht immer notwendig Mehrere Optionen können zusammengefasst werden I

I

Optionen verändern Wie tut das Programm etwas? I I

I

ls -l -h wird zu ls -lh Vergleiche ls und ls -lh Die Option -lh zeigt erweiterte Informationen an

Argumente verändern Womit macht das Programm etwas? I I I

Benjamin Eberle

Vergleiche ls und ls Dokumente ls zeigt den Inhalt des aktuellen Verzeichnisses an ls Dokumente zeigt den Inhalt des Verzeichnisses „Dokumente“ an

Arbeiten mit der Shell Teil 1

4. Mai 2016

4 / 24

Allgemeines zu Befehlen I I I

Groß- und Kleinschreibung ist wichtig Tab-Completion nutzen, um Tippfehler zu vermeiden Viele Befehle dienen der Dateiverwaltung I

Benjamin Eberle

Argumente sind häufig Dateien oder Verzeichnisse

Arbeiten mit der Shell Teil 1

4. Mai 2016

5 / 24

History I I

I

I

History: speichert ausgeführte Kommandos mit Pfeil-Hoch und -Runter können Kommandos erneut ausgeführt werden, ohne sie wieder einzugeben Einträge in der History können auch verändert werden: nützlich bei Tippfehlern mit Strg-R kann man die History rückwärts durchsuchen

Benjamin Eberle

Arbeiten mit der Shell Teil 1

4. Mai 2016

6 / 24

Wichtige Steuerungszeichen I

I I I I

Strg-D beendet die Shell/Ende der Eingabe bei manchen Programmen Strg-C beendet lang laufende Programme Strg-W löscht das Wort vor dem Cursor Strg-U löscht alles vor dem Cursor Strg-V ermöglicht es, ein Steuerungszeichen oder Tab einzugeben

Benjamin Eberle

Arbeiten mit der Shell Teil 1

4. Mai 2016

7 / 24

Die Unix-Philosophie I

Es gibt viele kleine Programme I I

I

Können die jeweiligen Aufgaben gut lösen Komplexe Aufgaben werden durch Verknüpfen dieser gelöst

Wichtiges Paradigma: „Everything is a File“ I I

Benjamin Eberle

Alles ist eine Datei, auch Verzeichnisse Keine Registry, Systemsteuerung, etc.

Arbeiten mit der Shell Teil 1

4. Mai 2016

8 / 24

Absolute und relative Pfade I

I

Pfade zu Dateien und Verzeichnissen können auf verschiedene Arten angegeben werden Absoluter Pfad: vom Wurzelverzeichnis / ausgehend I

I

/home/linux-kurs/Bilder/tux.png

Relativer Pfad: relativ zum aktuellen Verzeichnis I I I I

Benjamin Eberle

aktuelles Verzeichnis: /home/linux-kurs Dann relativ dazu: Bilder/tux.png ergibt auch /home/linux-kurs/Bilder/tux.png

Arbeiten mit der Shell Teil 1

4. Mai 2016

9 / 24

Verzeichnisse I

I I I I

Absoluten Pfad des aktuellen Verzeichnisses ausgeben: pwd („print working directory“) Aktuelles Verzeichnis: . Eltern-Verzeichnis des aktuellen Verzeichnisses: .. Home-Verzeichnis: ~ Kombination mit relativen Pfaden: I I

Benjamin Eberle

~/Bilder/tux.png ../irgend/wo/anders/notizen.txt

Arbeiten mit der Shell Teil 1

4. Mai 2016

10 / 24

Übersicht I I I I I I

ls : Verzeichnisinhalt auflisten cd : Verzeichnis wechseln mkdir und rmdir : Verzeichnisse anlegen und löschen rm : Dateien löschen mv : Dateien und Verzeichnisse verschieben cp : Dateien und Verzeichnisse kopieren

Benjamin Eberle

Arbeiten mit der Shell Teil 1

4. Mai 2016

11 / 24

ls I I

ls („list“) listet den Verzeichnisinhalt auf wichtige Optionen: I I I

I

-a : Versteckte Dateien anzeigen -l : Weitere Informationen ausgeben -h : Dateigröße in lesbaren Einheiten anzeigen

Argumente: I

Benjamin Eberle

Optional ein oder mehrere Verzeichnisse, standardmäßig wird das aktuelle Verzeichnis verwendet

Arbeiten mit der Shell Teil 1

4. Mai 2016

12 / 24

ls I I

I I

Versteckte Dateien/Verzeichnisse beginnen mit einem . Die Option -l zeigt zusätzlich Dateirechte, Besitzer, Größe und Änderungsdatum an Dateigrößen werden normalerweise in Bytes angezeigt Weitere Optionen: Siehe Manpage ( man ls )

Benjamin Eberle

Arbeiten mit der Shell Teil 1

4. Mai 2016

13 / 24

cd I I I

cd („change directory“): in ein anderes Verzeichnis wechseln keine wichtigen Optionen Argument: Verzeichnis, in das gewechselt werden soll I I I I

Benjamin Eberle

Angabe als relativer oder absoluter Pfad ~ , . und .. können im Pfad benutzt werden cd - wechselt in das vorherige Verzeichnis Wird kein Argument angegeben, wechselt cd ins Home-Verzeichnis (entspricht cd ~ )

Arbeiten mit der Shell Teil 1

4. Mai 2016

14 / 24

mkdir und rmdir I I I

mkdir („make directory“): legt Verzeichnisse an rmdir („remove directory“): löscht leere Verzeichnisse wichtige Option: I

I

-p legt Elternverzeichnisse automatisch an/löscht diese, falls leer

Argumente: I

Benjamin Eberle

Verzeichnisse, die angelegt/gelöscht werden sollen

Arbeiten mit der Shell Teil 1

4. Mai 2016

15 / 24

mkdir und rmdir I I

Beispiele: mkdir Dokumente/Studium//Linuxkurs1 I

I

mkdir -p Dokumente/Studium//Linuxkurs1 I

I

Das Verzeichnis „Dokumente/Studium/“ muss existieren

„Dokumente/Studium/Linuxkurs1“ wird angelegt, existieren seine Elternverzeichnisse noch nicht werden diese ebenfalls angelegt

rmdir Dokumente/Studium/Linuxkurs1 I

Benjamin Eberle

Verzeichnis „Linuxkurs1“ aus dem Verzeichnis „Dokumente/Studium/“ löschen

Arbeiten mit der Shell Teil 1

4. Mai 2016

16 / 24

rm I I

rm („remove“): löscht Dateien und Verzeichnisse wichtige Optionen: I I

I

I

-r oder -R : löscht Verzeichnisse mit Inhalt rekursiv -f : überhaupt keine Fragen stellen (z. B. bei schreibgeschützten Dateien) -i : vor dem Löschen jeder einzelnen Datei nachfragen

Argumente: beliebig viele Dateien und/oder Verzeichnisse

Benjamin Eberle

Arbeiten mit der Shell Teil 1

4. Mai 2016

17 / 24

rm I

I

Achtung: rm löscht Dateien unwiederbringlich ohne Nachfrage! Verzeichnisse können nur mit der Option -r gelöscht werden I

I

I

Löscht zuerst alle Dateien im angegebenen Verzeichnis und dessen Unterverzeichnisse Anschließend werden leere Verzeichnisse gelöscht

rm -rf ist besonders gefährlich I

Benjamin Eberle

Löscht das Verzeichnis samt Inhalt ohne Nachfrage

Arbeiten mit der Shell Teil 1

4. Mai 2016

18 / 24

Dateien anlegen I

I I

I

normalerweise werden Dateien angelegt, wenn man etwas darin speichert zu Testzwecken kann auch touch verwendet werden touch setzt eigentlich das Änderungsdatum der Datei auf das aktuelle Datum nicht existente Dateien werden leer angelegt

Benjamin Eberle

Arbeiten mit der Shell Teil 1

4. Mai 2016

19 / 24

mv I I

mv („move“) verschiebt Dateien und Verzeichnisse wichtige Optionen: I I

I I I

-b : legt Sicherungskopien an, wenn Dateien überschrieben werden -i : fragt vor dem Überschreiben nach

Argumente: zwei Dateiennamen: Datei wird umbenannt beliebig viele Dateien/Verzeichnisse und Verzeichnis als letztes Argument: Dateien werden in das Verzeichnis verschoben

Benjamin Eberle

Arbeiten mit der Shell Teil 1

4. Mai 2016

20 / 24

mv I I

Beispiele: mv geheim unwichtig I

I

Datei „geheim“ in „unwichtig“ umbenennen

mv shell1/ shell2/ Teilnehmer.txt VL/ I

Benjamin Eberle

Verzeichnisse „shell1“ und „shell2“, sowie „Teilnehmer.txt“ in das Verzeichnis „VL“ verschieben

Arbeiten mit der Shell Teil 1

4. Mai 2016

21 / 24

cp I I

cp („copy“) kopiert Dateien und Verzeichnisse wichtige Optionen: I

I

Argumente: I I

I I

-r oder -R : kopiert Verzeichnisse rekursiv zwei Dateinamen: Kopie der Datei wird angelegt beliebig viele Dateien/Verzeichnisse und Verzeichnis als letztes Argument: Dateien werden in das Verzeichnis kopiert

Verzeichnisse mit Inhalt müssen rekursiv kopiert werden weitere Optionen: siehe Manpage ( man cp )

Benjamin Eberle

Arbeiten mit der Shell Teil 1

4. Mai 2016

22 / 24

nano I I

sehr einfach zu bedienender Komandozeilen-Texteditor optionales Argument: Dateiname I I

I

wenn die Datei nicht existiert, wird sie angelegt vorhandene Datei wird geladen

Speichern mit Strg-O, Beenden mit Strg-X (^ entspricht Strg)

Benjamin Eberle

Arbeiten mit der Shell Teil 1

4. Mai 2016

23 / 24

Spickzettel Befehl pwd ls cd mkdir rmdir rm touch mv cp nano Benjamin Eberle

Optionen

-a , -l , -h -p -p -r / -R , -f -b , -i -r / -R

Funktion Gibt aktuelles Verzeichnis aus Verzeichnisinhalte auflisten Verzeichnis wechseln Verzeichnisse anlegen Leere Verzeichnisse löschen Dateien/Verzeichnisse löschen Leerer Dateien anlegen Dateien/Verzeichnisse verschieben Dateien/Verzeichnisse kopieren Ein Texteditor Arbeiten mit der Shell Teil 1

4. Mai 2016

24 / 24