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.
Inhalt
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.
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
number: Besitzer (owner bzw. u)
number: Gruppe (group bzw. g)
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.