Einstieg in das Arbeiten auf der Kommandozeile

Wenn Sie mit GNU/Linux-Betriebssystemen wie OSGeoLive, Ubuntu usw. arbeiten, ist es von Vorteil, wenn Sie auf der Kommandozeile arbeiten können.

Keine Sorge. Es ist nicht schwer zu erlernen und Sie werden entdecken, dass es Spaß macht und sehr mächtig ist.

In dieser Schnellstartanleitung lernen Sie einige grundlegende Befehle.

Die folgenden Befehle werden in einem Terminalemulatorfenster ausgeführt.

Starten Sie einen Terminal (aktuell QTerminal) aus dem Menü Anwendungen im Abschnitt Systemtools. Dadurch erhalten Sie eine Unix-Shell-Eingabeaufforderung.

Wo bin ich?

pwd zeigt den Pfad Ihres aktuellen Standorts an.

pwd
/home/user

Tipp

Sie können zu allen Befehlen eine Hilfe aufrufen und erhalten so Informationen darüber, wie die Befehle verwendet werden können, und sich über zusätzliche Optionen informieren.

pwd --help
pwd: pwd [-LP]
  Print the name of the current working directory.

  Options:
    -L        print the value of $PWD if it names the current working
              directory
    -P        print the physical directory, without any symbolic links

  By default, `pwd' behaves as if `-L' were specified.

  Exit Status:
  Returns 0 unless an invalid option is given or the current directory cannot be read.

Wie bewege ich mich im Dateisystem?

Zuerst sollten Sie erfahren, wie das Dateisystem unter Linux organisiert ist. Das Dateisystem ist in einer Baumstruktur organisiert. Diese beginnt mit / als Root-Verzeichnis. Alle Dateien und Verzeichnisse befinden sich unter dem Wurzelverzeichnis (/).

Der aktuelle Benutzer ist “user” und verfügt über ein Home-Verzeichnis unter /home/user. Jedes Mal, wenn Sie ein Terminalfenster öffnen, landen Sie in Ihrem Home-Verzeichnis (siehe pwd).

Mit dem Befehl cd können Sie ganz einfach im Dateisystem navigieren.

cd / navigiert zum Wurzelverzeichnis cd /home/user geht zu Ihrem Home-Verzeichnis, ebenso wie cd ~

cd .. geht ein Verzeichnis nach oben cd geht in das Home-Verzeichnis des Benutzers. Dies ist nicht dasselbe wie /user

Tipp

Verwenden Sie die Tabulatortaste, um den Pfad während der Eingabe automatisch zu vervollständigen.

Erstellen eines Verzeichnisses

Sie haben Schreibzugriff in Ihrem Benutzerverzeichnis. Sie können dort Dateien und Verzeichnisse erstellen. Als Nächstes erstellen wir ein Verzeichnis für einige Befehlszeilentests.

cd ~
mkdir demo - creates the directory demo
cd demo

Tipp

Sie haben einen Befehlsverlauf. Sie können in der Historie mit dem Pfeiltaste nach oben und unten navigieren.

So erstellen Sie eine neue Datei

touch erstellt eine neue leere Datei.

cd ~/demo
touch hello.txt

Tipp

Sie können die Informationen von einem Befehl in eine Datei, schreiben, zum Beispiel den Befehlsverlauf. history zeigt den Befehlsverlauf an. Mit dem folgenden Befehl kann die Historie in einer Datei geschrieben werden.

history > history.txt

Zeigen mir, was in einem Verzeichnis ist

Sie möchten mehr über den Inhalt eines Verzeichnisses erfahren. ls ist das Programm, das Ihnen viele Informationen ausgibt.

  • ls listet alle Dateien und Verzeichnisse auf

  • ls -l zeigt eine detailliertere Liste der Dateien/Verzeichnisse mit Zeitangabe, Benutzerzugriffsrechte

  • ls -a zeigt auch versteckte Dateien an

  • ls -al Sie können die verschiedenen Optionen auch kombinieren

  • ls -1 zeigt nur die Dateinamen an

cd ~/demo
ls -l

total 4
-rw-rw-r-- 1 user user   0 Dec 26 16:23 hello.txt
-rw-rw-r-- 1 user user 255 Dec 26 16:24 history.txt

Kopieren von Dateien und Verzeichnissen

Sie können Dateien von einem Speicherort an einen anderen kopieren.

Kopieren einer Datei in eine neue Datei

cp hello.txt hello_again.txt

Kopieren einer Datei in ein anderes Verzeichnis

cp hello.txt /home/user/

Kopieren eines ganzen Verzeichnisses an einen neuen Speicherort (-R rekursiv)

cp -R /home/user/demo /tmp

Wer ist sudo?

Mit sudo können Sie Dinge tun, die Sie normalerweise nicht dürfen. sudo führt Befehle mit den Rechten des Superusers, - auch bekannt als root - aus. Mit Hilfe von sudo können Sie z.B. zusätzliche Software installieren, Dienste verwalten, Zugriffsrechte ändern und mehr Vieles mehr. Die Verwendung von sudo sehen Sie in einigen der folgenden Befehle.

Suche nach und Installation von Programmen

Anzeigen von Informationen zu Programmen.

apt show postgis

Suche nach Programmen

apt search postgis

Installieren von Programmen

sudo apt-get install sl

Sie werden das Programm sl lieben. Führen Sie das neue Programm mit sl aus, siehe auch apt show sl.

Services

Einige Programme laufen als Dienste (Services) wie PostgreSQL, Tomcat oder Apache Webserver. Sie können die Dienste starten oder beenden.

Starten Sie Ihren Apache-Dienst neu

sudo service apache2 restart

sudo service apache2 --help

sudo service apache2 status

So bearbeiten Sie Dateien

Sie können Dateien im Terminal bearbeiten oder mit einem externen Programm wie Geany öffnen.

Im Terminal können Sie den vim editor (Vi IMproved) verwenden. vim ist sehr leistungsstark und hat viele Optionen.

Weitere Informationen

Öffnen Sie eine Datei mit vim:

vim /home/user/demo/hello.txt
  • Drücken Sie i, um in den Bearbeitungsmodus zu wechseln

  • ESC verlässt den Bearbeitungsmodus

  • :w speichert Ihre Änderungen

  • :wq speichert Ihre Änderungen und schließt die Datei

  • :q schließt die Datei

  • :q schließt die Datei, ohne zu speichern

Eigentümer- und Zugriffsrechte

Zugriffsrechte legen fest, ob ein Benutzer oder eine Gruppe oder Andere Zugriff auf eine Datei haben und welche Art von Zugriff gewährt wird. Sie können Lese-, Schreibrechte oder Rechte zum Ausführen haben.

Verzeichnisse oder Dateien verfügen über einen Besitzer und eine Gruppendefinition. Standardmäßig ist der Ersteller einer Datei/eines Verzeichnisses der Besitzer. Aber diese Definition kann geändert werden. Das erfahren Sie im nächsten Abschnitt.

Sie können den Benutzer und die Gruppe über ls -l anzeigen

cd /home/user/demo
ls -l
-rw-rw-r-- 1 user user 122 Dec 26 16:11 history.txt
  • Das Anfangszeichen kann - für eine Datei oder d für ein Verzeichnis sein

  • user ist als Besitzer und Gruppe definiert

Zugriffsrechte werden am Anfang der Zeile aufgeführt:

  • r lesen

  • w schreiben

  • x ausführen

  • die ersten 3 Buchstaben für den Besitzer

  • dann die nächsten 3 Buchstaben für die Gruppe

  • gefolgt von den letzten 3 Buchstaben für andere

Ändern des Besitzers mit chown

sudo chown -R user:www-data /var/www/html/TBD
  • zuerst wird der Benutzer übergeben und dann die Gruppe - also user:www-data

  • -R rekursiv

Zugriffsrechte mit chmod ändern

sudo chmod -R 777 /var/www/html/TBD
  • 777 jeder kann alles machen

  • -R rekursiv

    1. number: Besitzer (owner bzw. u)

    1. number: Gruppe (group bzw. g)

    1. Nummer: alle Anderen (o)

  • 4 lesen

  • 2 schreiben

  • 1 ausführen

  • 660 - Besitzer und Gruppe dürfen lesen und schreiben, andere haben keine Rechte

  • 744 - Besitzer kann alles tun, Gruppe und andere können nur lesen

oder verwenden Sie es wie folgt

sudo chmod -R u+rwx /var/www/html/TBD
  • u = Benutzer

  • g = Gruppe

  • o = Andere

  • a = Alle

  • +/- Recht: r = lesen / w = schreiben / x = ausführen

Was Sie noch ausprobieren können

Hier sind andere Befehle, die Sie ausprobieren können.

  • grep - Suche nach einem Muster in einem Text

  • history | grep cd
  • rm - Entfernen einer Datei

  • rmdir - Entfernen eines leeren Verzeichnisses

  • mv - umbenennen/verschieben

  • head - Anfang einer Datei anzeigen

  • tail - zeigt das Ende einer Datei an

  • find - Suche nach Dateien in einer Verzeichnishierarchie

  • locate - sucht nach Dateien nach Namen

Was kommt als Nächstes?

Sie haben einige wichtige Befehle und Informationen gelernt, um mit der Befehlszeile zu arbeiten. Hoffentlich haben Sie entdeckt, wie mächtig die Befehlszeile ist.