<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki.foxtom.de/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Alaa+Eldhawibi</id>
	<title>Foxwiki - Benutzerbeiträge [de]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.foxtom.de/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Alaa+Eldhawibi"/>
	<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php/Spezial:Beitr%C3%A4ge/Alaa_Eldhawibi"/>
	<updated>2026-06-02T17:22:38Z</updated>
	<subtitle>Benutzerbeiträge</subtitle>
	<generator>MediaWiki 1.45.3</generator>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=Minicom&amp;diff=7552</id>
		<title>Minicom</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=Minicom&amp;diff=7552"/>
		<updated>2020-01-11T22:53:56Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Mithilfe eines Kabels, kann man auf einem Computer eine serielle Verbindung zu bspw. einem Switch herstellen und das CLI (Command Line Interface) aufrufen. Diese Seite beschreibt die Vorgehensweise, um darauf zuzugreifen.&lt;br /&gt;
==Verbindung==&lt;br /&gt;
*Kabel mit einem RJ-45-Stecker und einem RS232-Stecker (oder USB)&lt;br /&gt;
[[Datei:RJ-45-Stecker.jpeg|200px|thumb|right|RJ-45-Stecker]]&lt;br /&gt;
[[Datei:USB.jpg|200px|thumb|right|USB]]&lt;br /&gt;
*Mithilfe von &#039;&#039;dmesg|grep tty&#039;&#039; die Schnittstellen herausfinden&lt;br /&gt;
&lt;br /&gt;
===Software===&lt;br /&gt;
*Ein serielles Kommunikationsprogramm wie &#039;&#039;minicom&#039;&#039; installieren und konfigurieren&lt;br /&gt;
 # apt install minicom&lt;br /&gt;
 # minicom -s&lt;br /&gt;
*Minicom konfigurieren :&lt;br /&gt;
 - Einstellungen zum seriellen Anschluss: &lt;br /&gt;
    - A - Serieller Anschluss      : /dev/ttyS0&lt;br /&gt;
    - E - Bps/Par/Bits             : 38400 8N1  &lt;br /&gt;
    - F - Hardware Flow Control    : Nein &lt;br /&gt;
  - Speichern als »dfl«  &lt;br /&gt;
*Unter Einstellung zum seriellen Anschluss auf Serieller Anschluss die Schnittstelle eingeben&lt;br /&gt;
*Darauffolgende Konsolenbefehle:&lt;br /&gt;
 # enable&lt;br /&gt;
 # configure&lt;br /&gt;
 # interface vlan 1                                          &lt;br /&gt;
 # ip address 10.0.0.254 255.0.0.0&lt;br /&gt;
*Auf Bps/Par/Bits die Verbindungseinstellungen eingeben, die für die Verbindung notwendig sind. Meist im [https://cloud.itw-berlin.net/index.php/apps/files/?dir=/seminar/06_netzwerke/switch_01&amp;amp;fileid=15857#pdfviewer  Handbuch] zu finden&lt;br /&gt;
*Mit &#039;&#039;minicom&#039;&#039; draufzugreifen. (&#039;&#039;&#039;Wichtig!&#039;&#039;&#039; Enter drücken um die Verbindung zu starten.)&lt;br /&gt;
*Loginname und Passwort des Geräts eingeben&lt;br /&gt;
==Benutzung==&lt;br /&gt;
*CLI-Handbücher beschreiben jedes Kommando, was man in der CLI eingeben kann&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=LPIC102/105.1_Die_Shell-Umgebung_anpassen_und_verwenden&amp;diff=7489</id>
		<title>LPIC102/105.1 Die Shell-Umgebung anpassen und verwenden</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=LPIC102/105.1_Die_Shell-Umgebung_anpassen_und_verwenden&amp;diff=7489"/>
		<updated>2019-12-17T10:43:12Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Wichtigste Wissensgebiete=&lt;br /&gt;
*Umgebungsvariable  (etwa  PATH)  beim  Anmelden  oder  Erzeugen  einer  neuen Shell setzen&lt;br /&gt;
&lt;br /&gt;
*Bash-Funktionen für häufig gebrauchte Kommandofolgen schreiben&lt;br /&gt;
&lt;br /&gt;
*Skelettverzeichnisse für neue Benutzerkonten pflegen&lt;br /&gt;
&lt;br /&gt;
*den Kommando-Suchpfad mit den richtigen Verzeichnissen setzen&lt;br /&gt;
=Allgemeines=&lt;br /&gt;
*Linux ist wohl das anpassungsfähigste Betriebssystem, das es gibt&amp;lt;br&amp;gt;&lt;br /&gt;
*Das trifft auch auf die  verschiedenen  Linux-Shells  zu, die  Sie  sehr  leicht  an  Ihre  eigenen  Bedürfnisse anpassen können&amp;lt;br&amp;gt;&lt;br /&gt;
*Alles, was Sie dazu brauchen, sind ein paar Befehle, Variablen und Konfigurationsdateien. Aber was ist überhaupt eine Shell?&lt;br /&gt;
&lt;br /&gt;
==Was is eine Shell==&lt;br /&gt;
*Ein textbasiertes Programm, dass als Schnittstelle zwischen Benutzer und Computer fungiert&lt;br /&gt;
*Benutzer kann durch die Shell mit dem Kernel kommunizieren&lt;br /&gt;
*Der englische Begriff Kernel zu Deutsch Kern heißt und eine Shell eine Schale ist, wird wohl sehr schnell klar, wie diese beiden Fachbegriffe entstanden sind und wo eine solche Shell im System-Gefüge angesiedelt ist&lt;br /&gt;
*Umgebung für die Ausführung von Skripten und Programmen&lt;br /&gt;
*Man kann sie im weitesten Sinne auch noch als Programmierumgebung betrachten&lt;br /&gt;
*Die am weitesten verbreitete Shell ist die &amp;quot;bash&amp;quot; (Bourne Again Shell)&lt;br /&gt;
*&amp;quot;sh&amp;quot; ist der Vorfahre der Bash&lt;br /&gt;
&lt;br /&gt;
==Umgebungsvariablen und Shellvariablen==&lt;br /&gt;
*Die Unterschiede zwischen diesen beiden Variablentypen liegen einerseits drin.&lt;br /&gt;
*Durch welche Konfigurationsdateien sie deklariert werden&lt;br /&gt;
*Und demzufolge wann und durch welches Programm sie ausgewertet werden&lt;br /&gt;
*Und andererseits in ihrem Wirkungsbereich:&lt;br /&gt;
&amp;lt;big&amp;gt;&#039;&#039;&#039;Umgebungsvariablen:&#039;&#039;&#039;&amp;lt;/big&amp;gt;  &lt;br /&gt;
*Gelten  für  alle  Shells,  die  ein  Benutzer  verwendet&lt;br /&gt;
*Die Inhalte  dieser  Variablen  werden  an  Subshells  vererbt.  Das  bedeutet,  dass  beim Aufruf  einer  Subshell  ein  automatischer  Export  der  Variablen  in  diese Subshell stattfindet&lt;br /&gt;
*Bei   Umgebungsvariablen   werden   normalerweise   Großbuchstaben verwendet&lt;br /&gt;
&amp;lt;big&amp;gt;&#039;&#039;&#039;Shellvariablen:&#039;&#039;&#039;&amp;lt;/big&amp;gt;&lt;br /&gt;
*Müssen  in  jeder  Subshell, die  durch  den  Benutzer  oder  ein  Skript gestartet  wird,  neu  deklariert werden&lt;br /&gt;
*Es findet  standardmäßig  keine  Vererbung statt&amp;lt;br&amp;gt;&lt;br /&gt;
*Für Shellvariablen verwendet man üblicherweise Kleinbuchstaben&lt;br /&gt;
&amp;lt;big&amp;gt;&#039;&#039;&#039;Variablen:&#039;&#039;&#039;&amp;lt;/big&amp;gt;&lt;br /&gt;
*Die Bash unterscheidet zwischen Groß- und Kleinschreibweise &lt;br /&gt;
*Die Konventionen bezüglich der Schreibweisen bei Umgebungs- oder Shellvariablen werden von einigen Distributionen nicht eingehalten&lt;br /&gt;
&amp;lt;big&amp;gt;&#039;&#039;&#039;Variablen deklarieren:&#039;&#039;&#039;&amp;lt;/big&amp;gt;&lt;br /&gt;
*Die Deklaration und Abfrage einer Shellvariable erfolgt recht einfach:&lt;br /&gt;
 $ a=5&lt;br /&gt;
 $ b=6&lt;br /&gt;
 $ let c=$a+$b&lt;br /&gt;
 $ echo $c=$a+$b&lt;br /&gt;
 11=5+6&lt;br /&gt;
*Die Variablen a und b mit den Werten 5 und 6 gefüllt&lt;br /&gt;
*Dritte Zeile sorgt, dass Variable c das Ergebnis der Summe aus $a und $b wird&lt;br /&gt;
*Letzte Zeile gibt die komplette Operation aus&lt;br /&gt;
*Inhalte einer Variablen bleiben innerhalb einer Shell erhalten =&amp;gt; die Variable kann wiederholt abgerufen oder verwendet werden&lt;br /&gt;
 $ echo $c&lt;br /&gt;
 11&lt;br /&gt;
*Der Bfehl &amp;lt;code&amp;gt;[[Linuxbefehl: declare|declare]]&amp;lt;/code&amp;gt; setzt Variablenwerte und deren Attribute.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;&#039;&#039;&#039;Variablen exportieren:&#039;&#039;&#039;&amp;lt;/big&amp;gt;&lt;br /&gt;
*Wird eine Subshell aufgerufen, steht diese Variable nicht mehr zur Verfügung, weil es sich nicht um eine Umgebungsvariable handelt &lt;br /&gt;
*Es ist aber möglich, eine Variable für eine Subshell verfügbar zu machen, indem man diese exportiert&lt;br /&gt;
*Ein solcher Export erfolgt nur an untergeordnete, jedoch nie an übergeordnete Shells &lt;br /&gt;
*Export bewirkt nicht, dass aus einer Shellvariable eine Umgebungsvariable wird &lt;br /&gt;
*Der Exportbefehl kann auf zwei Arten durchgeführt werden:&lt;br /&gt;
 $ export c&lt;br /&gt;
 $ sh&lt;br /&gt;
 sh-3.00# echo $c&lt;br /&gt;
 11&lt;br /&gt;
*In der ersten Variante wurde die Variable c aus dem vorangegangenen Beispiel exportiert und anschließend wurde mit sh eine neue Subshell geöffnet und dann mit echo $c auf dem Bildschirm ausgegeben&lt;br /&gt;
*Die zweite Methode sieht folgendermaßen aus:&lt;br /&gt;
 $ export z=1000&lt;br /&gt;
 $ sh&lt;br /&gt;
 sh-3.00# echo $z&lt;br /&gt;
 1000&lt;br /&gt;
*Die Deklaration der Variablen und der Export sind mit einem Befehl durchgeführt worden&lt;br /&gt;
*Mit echo $z wird demonstriert, dass der Inhalt der Variablen in der Ziel-Shell angekommen ist&lt;br /&gt;
&amp;lt;big&amp;gt;&#039;&#039;&#039;Variablen einsehen:&#039;&#039;&#039;&amp;lt;/big&amp;gt;&lt;br /&gt;
*Mit dem Befehl &amp;lt;code&amp;gt;[[Linuxbefehl: set|set]]&amp;lt;/code&amp;gt; ohne Angabe von Parametern kann man nachsehen, welche Umgebungs- und Shellvariablen die aktuelle Shell gerade verwendet&lt;br /&gt;
*Die Ausgabe an less weitergebn, damit Sie den Inhalt in Ruhe untersuchen können&lt;br /&gt;
*Eine gekürzte Ausgabe könnte Folgendes enthalten:&lt;br /&gt;
 $ set | less&lt;br /&gt;
 a=5&lt;br /&gt;
 b=6&lt;br /&gt;
 BASH=/bin/bash&lt;br /&gt;
 c=11&lt;br /&gt;
 HISTSIZE=1000&lt;br /&gt;
 HOME=/root&lt;br /&gt;
 HOSTNAME=archangel&lt;br /&gt;
 MANPATH=/usr/share/man:/usr/local/man:/usr/X11R6/man:/opt/gnome/share/man&lt;br /&gt;
 PAGER=less&lt;br /&gt;
 PATH=/sbin:/usr/sbin:/usr/local/sbin:/root/bin:/usr/local/bin:/usr/bin:/usr/&lt;br /&gt;
 X11R&lt;br /&gt;
*Umgebungsvariablen können mit dem Kommando &amp;lt;code&amp;gt;[[Linuxbefehl: env|env]]&amp;lt;/code&amp;gt; eingesehen werden &lt;br /&gt;
*Es ist ratsam, die Ausgabe mit less zu betrachten&lt;br /&gt;
&amp;lt;big&amp;gt;&#039;&#039;&#039;Variablen löschen:&#039;&#039;&#039;&amp;lt;/big&amp;gt;&lt;br /&gt;
*Variablen werden mit dem Befehl &amp;lt;code&amp;gt;unset&amp;lt;/code&amp;gt; gelöscht&lt;br /&gt;
*Um die Variablen aus den vorherigen Beispielen zu entfernen, geben Sie Folgendes ein:&lt;br /&gt;
 $ unset a&lt;br /&gt;
 $ unset b&lt;br /&gt;
 $ unset c&lt;br /&gt;
oder einfacher:&lt;br /&gt;
 $ unset a b c&lt;br /&gt;
Zur Überprüfung:&lt;br /&gt;
 $ set | less&lt;br /&gt;
 BASH=/bin/bash&lt;br /&gt;
 HISTSIZE=1000&lt;br /&gt;
 ...&lt;br /&gt;
*Die Variablen a, b und c wurden gelöscht&lt;br /&gt;
*Alternativ ist eine Neuanmeldung möglich, denn es handelt sich um Shellvariablen, die bei Abmeldung nicht erhalten bleiben&lt;br /&gt;
&lt;br /&gt;
==Aliase und Funktionen==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;&#039;&#039;&#039;Aliase:&#039;&#039;&#039;&amp;lt;/big&amp;gt;&lt;br /&gt;
*Für Befehle in Kombination mit bestimmten Parametern oder langen Befehlen die häufiger verwendet werden ist es empfehlenswert ein Alias anzulegen&lt;br /&gt;
*Es ist möglich, mehrere Kommandos in einem einzigen Befehl zu kombinieren, indem Diese durch Semikolons &amp;quot;;&amp;quot; voneinander getrennt werden. Hier ein Beispiel:&lt;br /&gt;
 $ alias frei=&amp;quot;free; df&amp;quot;&lt;br /&gt;
 $ frei&lt;br /&gt;
               total        used        free      shared  buff/cache   available&lt;br /&gt;
 Mem:        3870884     1001952     1608764      124880     1260168     2512240&lt;br /&gt;
 Swap:       7811068           0     7811068&lt;br /&gt;
 Dateisystem    1K-Blöcke Benutzt Verfügbar Verw% Eingehängt auf&lt;br /&gt;
 udev             1924160       0   1924160    0% /dev&lt;br /&gt;
 tmpfs             387092    5896    381196    2% /run&lt;br /&gt;
 /dev/sda2       38186548 7072220  29144820   20% /&lt;br /&gt;
 tmpfs            1935440   11096   1924344    1% /dev/shm&lt;br /&gt;
 tmpfs               5120       4      5116    1% /run/lock&lt;br /&gt;
 tmpfs            1935440       0   1935440    0% /sys/fs/cgroup&lt;br /&gt;
 tmpfs             387088       0    387088    0% /run/user/113&lt;br /&gt;
 tmpfs             387088      12    387076    1% /run/user/1000&lt;br /&gt;
*es wird mit einem einzigen Befehl die Festplatten- und Speicherbelegung überprüft, allerdings geht die Definition der Aliase bei einer Neuanmeldung am System verloren&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;&#039;&#039;&#039;Funktionen:&#039;&#039;&#039;&amp;lt;/big&amp;gt;&lt;br /&gt;
*Einschränkungen des Alias ist, dass der Übergabewerte ($1, $2 usw.) nur einmal ausgewertet werden kann, bei einer Funktion gibt es diese Einschränkung nicht &lt;br /&gt;
*Eine Funktion ist ein Unterprogramm, das man für wiederkehrende Aufgaben verwenden kann&lt;br /&gt;
*Kann in einer Shell sowohl von einem Benutzer als auch von einem Skript aufgerufen werden&lt;br /&gt;
*Der Aufbau einer Funktion sieht immer so aus:&lt;br /&gt;
 $ function Funktionsname() &lt;br /&gt;
 { &lt;br /&gt;
 Befehl 1 &lt;br /&gt;
 Befehl 2 &lt;br /&gt;
 ... &lt;br /&gt;
 Befehl n &lt;br /&gt;
 }&lt;br /&gt;
*&amp;quot;function&amp;quot; kann auch einfach weggelassen werden, weil die Bash an den beiden Klammern erkennt, dass es sich um eine Funktion handelt&lt;br /&gt;
*Das Beispiel demonstriert, dass es mit einer Funktion sogar möglich ist, Rechenoperationen auszuführen:&lt;br /&gt;
function addiere () &lt;br /&gt;
 &amp;gt; { &lt;br /&gt;
 &amp;gt; let summe=$1+$2 &lt;br /&gt;
 &amp;gt; echo -e &amp;quot;Die Summe ist $summe&amp;quot; &lt;br /&gt;
 &amp;gt; } &lt;br /&gt;
 addiere 3 4 &lt;br /&gt;
 Die Summe ist 7&lt;br /&gt;
*eine Funktion namens addiere wurde erstellt&lt;br /&gt;
*Die geschweiften Klammern sorgen dafür, dass diese mehrzeilige Anweisung als ein einziger Befehl interpretiert wird&lt;br /&gt;
*&amp;quot;let summe=$1+$2&amp;quot; sorgt dafür, dass der Variable &amp;quot;summe&amp;quot; die Summe aus den beiden Übergabevariablen $1 und $2 übergeben wird&lt;br /&gt;
*In der nächsten Zeile erfolgt die Ausgabe&lt;br /&gt;
*Es ist auch möglich, eine Funktion in einer einzigen Zeile zu erstellen:&lt;br /&gt;
 $ function addiere { let summe=$1+$2; echo &amp;quot;Die Summe ist $summe&amp;quot;; }&lt;br /&gt;
*die beiden Leerzeichen innerhalb der geschweiften Klammern sind notwendig und dienen nicht nur der Übersichtlichkeit&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;&#039;&#039;&#039;builtin:&#039;&#039;&#039;&amp;lt;/big&amp;gt;&lt;br /&gt;
*wird verwendet falls der Name der Bezeichnung für die eigenen Funktionen und Aliase vergeben ist &lt;br /&gt;
*wenn man eine Funktion oder einen Alias erstellen möchte, welches namentlich mit einem existierenden Kommando übereinstimmt, müsste man zum Aufruf des ursprünglichen Kommandos den kompletten Pfad zu diesem Kommando angeben&lt;br /&gt;
*mit dem Kommando &amp;quot;builtin&amp;quot; kann z. B. für den echo-Befehl einen Alias einrichten: &lt;br /&gt;
 $ alias echo=&#039;echo -e&#039; &lt;br /&gt;
*wird echo im Originalzustand gebraucht, erfolgt der Aufruf durch: &lt;br /&gt;
 $ builtin echo&lt;br /&gt;
&lt;br /&gt;
=Konfigurationsdateien der Bash=&lt;br /&gt;
*In den unterschiedlichen Linux-Distributionen kann es zu unterschiedlichen Konstrukten der Konfigurationsdateien kommen&lt;br /&gt;
*Konfigurationsdateien, die für alle Anwender Gültigkeit haben, befinden sich im Verzeichnis /etc und beginnen niemals mit einem Punkt &lt;br /&gt;
*individuelle Konfigurationsdateien für den jeweiligen User befinden sich im entsprechenden Heimatverzeichnis und beginnen immer mit einem Punkt&lt;br /&gt;
==Systemweite Konfigurationsdateien==&lt;br /&gt;
Die systemweiten Konfigurationsdateien sind für jeden Benutzer gültig, der sich am System anmeldet. &lt;br /&gt;
Die beiden gängigsten sind folgende: &lt;br /&gt;
* /etc/profile ist die erste Konfigurationsdatei, die bei der Anmeldung (Login- Shell) eines Benutzers eingelesen wird&lt;br /&gt;
**enthält erste Umgebungsvariablen und die erste PATH-Anweisun&lt;br /&gt;
**Änderungen in dieser Datei erfordern eine neue Anmeldung des Benutzers &lt;br /&gt;
* /etc/bash.bashrc enthält systemweite Einstellungen, Aliase und Funktionen&lt;br /&gt;
**wird beim Start jeder Shell neu eingelesen und erfordert deshalb nach Änderung keine Neuanmeldung des Benutzers&lt;br /&gt;
==Konfigurationsdateien für den Benutzer==&lt;br /&gt;
Die folgenden Dateien befinden sich im Heimatverzeichnis eines jeden Benutzers und dürfen auch durch seinen Besitzer modifiziert werden:&lt;br /&gt;
* ~/.bash_profile wird (falls vorhanden) nur bei einer Neuanmeldung eingelesen und sofort nach /etc/profile ausgeführt &lt;br /&gt;
**beinhaltet zusätzliche Pfadanweisungen, den zu verwendenden Standardeditor und benutzerspezifische Umgebungsvariablen&lt;br /&gt;
* ~/.bash_login ist eine Alternative zu .bash_profile &lt;br /&gt;
**wird auch nur dann abgearbeitet, wenn die Datei .bash_profile nicht existiert&lt;br /&gt;
**diese Datei wird nur während der Anmeldung verwendet&lt;br /&gt;
**Inhalt und der Verwendungszweck entsprechen der .bash_profile &lt;br /&gt;
* ~/.profile ist die ursprüngliche Konfigurationsdatei der Bash &lt;br /&gt;
**wird nur während der Anmeldung (für die Login-Shell) eingelesen, aber nur wenn weder eine .bash_profile- noch eine .bash_login-Datei im Verzeichnis des Benutzers existieren&lt;br /&gt;
**Inhalt und Verwendungszweck entsprechen der .bash_profile und .bash_login&lt;br /&gt;
* ~/.bashrc ist die andere, ursprüngliche Konfigurationsdatei der Bash &lt;br /&gt;
**wird in jedem Fall eingelesen, und zwar auch beim Aufruf einer neuen Shell&lt;br /&gt;
**nach Änderungen in dieser Datei ist keine Neuanmeldung des Benutzers erforderlich&lt;br /&gt;
**beinhaltet im Wesentlichen Aliase und Funktionen.&lt;br /&gt;
* ~/.bash_logout ist eine optionale Datei&lt;br /&gt;
**wird ausgeführt wenn der Benutzer sich abmeldet&lt;br /&gt;
==Konfiguration &amp;quot;on the fly&amp;quot; einlesen==&lt;br /&gt;
*wurden neue Variablen in den Konfigurationsdateien deklariert, können diese sofort wirksam gemacht werden, indem man das Shell-interne Kommando source verwendet &lt;br /&gt;
 $ source /etc/profile&lt;br /&gt;
&lt;br /&gt;
=Skeleton-Verzeichnis /etc/skel=&lt;br /&gt;
*eine Vorlage für das Heimatverzeichnis eines neuen Benutzers&lt;br /&gt;
*beim Erstellen eines neuen Benutzerkontos mit useradd -m &amp;quot;username&amp;quot; wird, ein Verzeichnis namens /home/&amp;quot;username&amp;quot; erstellt&lt;br /&gt;
*der Inhalt des Skeleton-Verzeichnisses wird dann in das Verzeichnis /home/&amp;quot;username&amp;quot; kopiert&lt;br /&gt;
*die Berechtigungen werden für das Verzeichnis und dessen Inhalt auf den neuen Benutzer abgestimmt&lt;br /&gt;
*Speicherort ist normalerweise /etc/skel&lt;br /&gt;
&lt;br /&gt;
=Kontrollfragen=&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Mit welchem Befehl kann man nachsehen, welche Umgebungs- und Shellvariablen die aktuelle Shell gerade verwendet?&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;set&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Mit welchem Befehl kann man einen alias löschen?&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;unalias&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Frage 3&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;Antwort&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Frage 4&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;Antwort&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Frage 5&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;Antwort&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:LPIC102]]&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=LPIC102/105.1_Die_Shell-Umgebung_anpassen_und_verwenden&amp;diff=7403</id>
		<title>LPIC102/105.1 Die Shell-Umgebung anpassen und verwenden</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=LPIC102/105.1_Die_Shell-Umgebung_anpassen_und_verwenden&amp;diff=7403"/>
		<updated>2019-12-11T21:07:15Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: /* Umgebungsvariablen und Shellvariablen */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Wichtigste Wissensgebiete=&lt;br /&gt;
*Umgebungsvariable  (etwa  PATH)  beim  Anmelden  oder  Erzeugen  einer  neuen Shell setzen&lt;br /&gt;
&lt;br /&gt;
*Bash-Funktionen für häufig gebrauchte Kommandofolgen schreiben&lt;br /&gt;
&lt;br /&gt;
*Skelettverzeichnisse für neue Benutzerkonten pflegen&lt;br /&gt;
&lt;br /&gt;
*den Kommando-Suchpfad mit den richtigen Verzeichnissen setzen&lt;br /&gt;
=Allgemeines=&lt;br /&gt;
*Linux ist wohl das anpassungsfähigste Betriebssystem, das es gibt&amp;lt;br&amp;gt;&lt;br /&gt;
*Das trifft auch auf die  verschiedenen  Linux-Shells  zu, die  Sie  sehr  leicht  an  Ihre  eigenen  Bedürfnisse anpassen können&amp;lt;br&amp;gt;&lt;br /&gt;
*Alles, was Sie dazu brauchen, sind ein paar Befehle, Variablen und Konfigurationsdateien. Aber was ist überhaupt eine Shell?&lt;br /&gt;
&lt;br /&gt;
==Was is eine Shell==&lt;br /&gt;
*Ein textbasiertes Programm, dass als Schnittstelle zwischen Benutzer und Computer fungiert&lt;br /&gt;
*Benutzer kann durch die Shell mit dem Kernel kommunizieren&lt;br /&gt;
*Der englische Begriff Kernel zu Deutsch Kern heißt und eine Shell eine Schale ist, wird wohl sehr schnell klar, wie diese beiden Fachbegriffe entstanden sind und wo eine solche Shell im System-Gefüge angesiedelt ist&lt;br /&gt;
*Umgebung für die Ausführung von Skripten und Programmen&lt;br /&gt;
*Man kann sie im weitesten Sinne auch noch als Programmierumgebung betrachten&lt;br /&gt;
*Die am weitesten verbreitete Shell ist die &amp;quot;bash&amp;quot; (Bourne Again Shell)&lt;br /&gt;
*&amp;quot;sh&amp;quot; ist der Vorfahre der Bash&lt;br /&gt;
&lt;br /&gt;
==Umgebungsvariablen und Shellvariablen==&lt;br /&gt;
*Die Unterschiede zwischen diesen beiden Variablentypen liegen einerseits drin.&lt;br /&gt;
*Durch welche Konfigurationsdateien sie deklariert werden&lt;br /&gt;
*Und demzufolge wann und durch welches Programm sie ausgewertet werden&lt;br /&gt;
*Und andererseits in ihrem Wirkungsbereich:&lt;br /&gt;
&amp;lt;big&amp;gt;&#039;&#039;&#039;Umgebungsvariablen:&#039;&#039;&#039;&amp;lt;/big&amp;gt;  &lt;br /&gt;
*Gelten  für  alle  Shells,  die  ein  Benutzer  verwendet&lt;br /&gt;
*Die Inhalte  dieser  Variablen  werden  an  Subshells  vererbt.  Das  bedeutet,  dass  beim Aufruf  einer  Subshell  ein  automatischer  Export  der  Variablen  in  diese Subshell stattfindet&lt;br /&gt;
*Bei   Umgebungsvariablen   werden   normalerweise   Großbuchstaben verwendet&lt;br /&gt;
&amp;lt;big&amp;gt;&#039;&#039;&#039;Shellvariablen:&#039;&#039;&#039;&amp;lt;/big&amp;gt;&lt;br /&gt;
*Müssen  in  jeder  Subshell, die  durch  den  Benutzer  oder  ein  Skript gestartet  wird,  neu  deklariert werden&lt;br /&gt;
*Es findet  standardmäßig  keine  Vererbung statt&amp;lt;br&amp;gt;&lt;br /&gt;
*Für Shellvariablen verwendet man üblicherweise Kleinbuchstaben&lt;br /&gt;
&amp;lt;big&amp;gt;&#039;&#039;&#039;Variablen:&#039;&#039;&#039;&amp;lt;/big&amp;gt;&lt;br /&gt;
*Die Bash unterscheidet zwischen Groß- und Kleinschreibweise &lt;br /&gt;
*Die Konventionen bezüglich der Schreibweisen bei Umgebungs- oder Shellvariablen werden von einigen Distributionen nicht eingehalten&lt;br /&gt;
&amp;lt;big&amp;gt;&#039;&#039;&#039;Variablen deklarieren:&#039;&#039;&#039;&amp;lt;/big&amp;gt;&lt;br /&gt;
*Die Deklaration und Abfrage einer Shellvariable erfolgt recht einfach:&lt;br /&gt;
 $ a=5&lt;br /&gt;
 $ b=6&lt;br /&gt;
 $ let c=$a+$b&lt;br /&gt;
 $ echo $c=$a+$b&lt;br /&gt;
 11=5+6&lt;br /&gt;
*Die Variablen a und b mit den Werten 5 und 6 gefüllt&lt;br /&gt;
*Dritte Zeile sorgt, dass Variable c das Ergebnis der Summe aus $a und $b wird&lt;br /&gt;
*Letzte Zeile gibt die komplette Operation aus&lt;br /&gt;
*Inhalte einer Variablen bleiben innerhalb einer Shell erhalten =&amp;gt; die Variable kann wiederholt abgerufen oder verwendet werden&lt;br /&gt;
 $ echo $c&lt;br /&gt;
 11&lt;br /&gt;
*Der Bfehl &amp;lt;code&amp;gt;[[Linuxbefehl: declare|declare]]&amp;lt;/code&amp;gt; setzt Variablenwerte und deren Attribute.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;&#039;&#039;&#039;Variablen exportieren:&#039;&#039;&#039;&amp;lt;/big&amp;gt;&lt;br /&gt;
*Wird eine Subshell aufgerufen, steht diese Variable nicht mehr zur Verfügung, weil es sich nicht um eine Umgebungsvariable handelt &lt;br /&gt;
*Es ist aber möglich, eine Variable für eine Subshell verfügbar zu machen, indem man diese exportiert&lt;br /&gt;
*Ein solcher Export erfolgt nur an untergeordnete, jedoch nie an übergeordnete Shells &lt;br /&gt;
*Export bewirkt nicht, dass aus einer Shellvariable eine Umgebungsvariable wird &lt;br /&gt;
*Der Exportbefehl kann auf zwei Arten durchgeführt werden:&lt;br /&gt;
 $ export c&lt;br /&gt;
 $ sh&lt;br /&gt;
 sh-3.00# echo $c&lt;br /&gt;
 11&lt;br /&gt;
*In der ersten Variante wurde die Variable c aus dem vorangegangenen Beispiel exportiert und anschließend wurde mit sh eine neue Subshell geöffnet und dann mit echo $c auf dem Bildschirm ausgegeben&lt;br /&gt;
*Die zweite Methode sieht folgendermaßen aus:&lt;br /&gt;
 $ export z=1000&lt;br /&gt;
 $ sh&lt;br /&gt;
 sh-3.00# echo $z&lt;br /&gt;
 1000&lt;br /&gt;
*Die Deklaration der Variablen und der Export sind mit einem Befehl durchgeführt worden&lt;br /&gt;
*Mit echo $z wird demonstriert, dass der Inhalt der Variablen in der Ziel-Shell angekommen ist&lt;br /&gt;
&amp;lt;big&amp;gt;&#039;&#039;&#039;Variablen einsehen:&#039;&#039;&#039;&amp;lt;/big&amp;gt;&lt;br /&gt;
*Mit dem Befehl &amp;lt;code&amp;gt;[[Linuxbefehl: set|set]]&amp;lt;/code&amp;gt; ohne Angabe von Parametern kann man nachsehen, welche Umgebungs- und Shellvariablen die aktuelle Shell gerade verwendet&lt;br /&gt;
*Die Ausgabe an less weitergebn, damit Sie den Inhalt in Ruhe untersuchen können&lt;br /&gt;
*Eine gekürzte Ausgabe könnte Folgendes enthalten:&lt;br /&gt;
 $ set | less&lt;br /&gt;
 a=5&lt;br /&gt;
 b=6&lt;br /&gt;
 BASH=/bin/bash&lt;br /&gt;
 c=11&lt;br /&gt;
 HISTSIZE=1000&lt;br /&gt;
 HOME=/root&lt;br /&gt;
 HOSTNAME=archangel&lt;br /&gt;
 MANPATH=/usr/share/man:/usr/local/man:/usr/X11R6/man:/opt/gnome/share/man&lt;br /&gt;
 PAGER=less&lt;br /&gt;
 PATH=/sbin:/usr/sbin:/usr/local/sbin:/root/bin:/usr/local/bin:/usr/bin:/usr/&lt;br /&gt;
 X11R&lt;br /&gt;
*Umgebungsvariablen können mit dem Kommando &amp;lt;code&amp;gt;[[Linuxbefehl: env|env]]&amp;lt;/code&amp;gt; eingesehen werden &lt;br /&gt;
*Es ist ratsam, die Ausgabe mit less zu betrachten&lt;br /&gt;
&amp;lt;big&amp;gt;&#039;&#039;&#039;Variablen löschen:&#039;&#039;&#039;&amp;lt;/big&amp;gt;&lt;br /&gt;
*Variablen werden mit dem Befehl &amp;lt;code&amp;gt;unset&amp;lt;/code&amp;gt; gelöscht&lt;br /&gt;
*Um die Variablen aus den vorherigen Beispielen zu entfernen, geben Sie Folgendes ein:&lt;br /&gt;
 $ unset a&lt;br /&gt;
 $ unset b&lt;br /&gt;
 $ unset c&lt;br /&gt;
oder einfacher:&lt;br /&gt;
 $ unset a b c&lt;br /&gt;
Zur Überprüfung:&lt;br /&gt;
 $ set | less&lt;br /&gt;
 BASH=/bin/bash&lt;br /&gt;
 HISTSIZE=1000&lt;br /&gt;
 ...&lt;br /&gt;
*Die Variablen a, b und c wurden gelöscht&lt;br /&gt;
*Alternativ ist eine Neuanmeldung möglich, denn es handelt sich um Shellvariablen, die bei Abmeldung nicht erhalten bleiben&lt;br /&gt;
&lt;br /&gt;
==Aliase und Funktionen==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;&#039;&#039;&#039;Aliase:&#039;&#039;&#039;&amp;lt;/big&amp;gt;&lt;br /&gt;
*Für Befehle in Kombination mit bestimmten Parametern oder langen Befehlen die häufiger verwendet werden ist es empfehlenswert ein Alias anzulegen&lt;br /&gt;
*Es ist möglich, mehrere Kommandos in einem einzigen Befehl zu kombinieren, indem Diese durch Semikolons &amp;quot;;&amp;quot; voneinander getrennt werden. Hier ein Beispiel:&lt;br /&gt;
 $ alias frei=&amp;quot;free; df&amp;quot;&lt;br /&gt;
 $ frei&lt;br /&gt;
               total        used        free      shared  buff/cache   available&lt;br /&gt;
 Mem:        3870884     1001952     1608764      124880     1260168     2512240&lt;br /&gt;
 Swap:       7811068           0     7811068&lt;br /&gt;
 Dateisystem    1K-Blöcke Benutzt Verfügbar Verw% Eingehängt auf&lt;br /&gt;
 udev             1924160       0   1924160    0% /dev&lt;br /&gt;
 tmpfs             387092    5896    381196    2% /run&lt;br /&gt;
 /dev/sda2       38186548 7072220  29144820   20% /&lt;br /&gt;
 tmpfs            1935440   11096   1924344    1% /dev/shm&lt;br /&gt;
 tmpfs               5120       4      5116    1% /run/lock&lt;br /&gt;
 tmpfs            1935440       0   1935440    0% /sys/fs/cgroup&lt;br /&gt;
 tmpfs             387088       0    387088    0% /run/user/113&lt;br /&gt;
 tmpfs             387088      12    387076    1% /run/user/1000&lt;br /&gt;
*es wird mit einem einzigen Befehl die Festplatten- und Speicherbelegung überprüft, allerdings geht die Definition der Aliase bei einer Neuanmeldung am System verloren&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;&#039;&#039;&#039;Funktionen:&#039;&#039;&#039;&amp;lt;/big&amp;gt;&lt;br /&gt;
*Einschränkungen des Alias ist, dass der Übergabewerte ($1, $2 usw.) nur einmal ausgewertet werden kann, bei einer Funktion gibt es diese Einschränkung nicht &lt;br /&gt;
*Eine Funktion ist ein Unterprogramm, das man für wiederkehrende Aufgaben verwenden kann&lt;br /&gt;
*Kann in einer Shell sowohl von einem Benutzer als auch von einem Skript aufgerufen werden&lt;br /&gt;
*Der Aufbau einer Funktion sieht immer so aus:&lt;br /&gt;
 $ function Funktionsname() &lt;br /&gt;
 { &lt;br /&gt;
 Befehl 1 &lt;br /&gt;
 Befehl 2 &lt;br /&gt;
 ... &lt;br /&gt;
 Befehl n &lt;br /&gt;
 }&lt;br /&gt;
*&amp;quot;function&amp;quot; kann auch einfach weggelassen werden, weil die Bash an den beiden Klammern erkennt, dass es sich um eine Funktion handelt&lt;br /&gt;
*Das Beispiel demonstriert, dass es mit einer Funktion sogar möglich ist, Rechenoperationen auszuführen:&lt;br /&gt;
function addiere () &lt;br /&gt;
 &amp;gt; { &lt;br /&gt;
 &amp;gt; let summe=$1+$2 &lt;br /&gt;
 &amp;gt; echo -e &amp;quot;Die Summe ist $summe&amp;quot; &lt;br /&gt;
 &amp;gt; } &lt;br /&gt;
 addiere 3 4 &lt;br /&gt;
 Die Summe ist 7&lt;br /&gt;
*eine Funktion namens addiere wurde erstellt&lt;br /&gt;
*Die geschweiften Klammern sorgen dafür, dass diese mehrzeilige Anweisung als ein einziger Befehl interpretiert wird&lt;br /&gt;
*&amp;quot;let summe=$1+$2&amp;quot; sorgt dafür, dass der Variable &amp;quot;summe&amp;quot; die Summe aus den beiden Übergabevariablen $1 und $2 übergeben wird&lt;br /&gt;
*In der nächsten Zeile erfolgt die Ausgabe&lt;br /&gt;
*Es ist auch möglich, eine Funktion in einer einzigen Zeile zu erstellen:&lt;br /&gt;
 $ function addiere { let summe=$1+$2; echo &amp;quot;Die Summe ist $summe&amp;quot;; }&lt;br /&gt;
*die beiden Leerzeichen innerhalb der geschweiften Klammern sind notwendig und dienen nicht nur der Übersichtlichkeit&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;&#039;&#039;&#039;builtin:&#039;&#039;&#039;&amp;lt;/big&amp;gt;&lt;br /&gt;
*wird verwendet falls der Name der Bezeichnung für die eigenen Funktionen und Aliase vergeben ist &lt;br /&gt;
*wenn man eine Funktion oder einen Alias erstellen möchte, welches namentlich mit einem existierenden Kommando übereinstimmt, müsste man zum Aufruf des ursprünglichen Kommandos den kompletten Pfad zu diesem Kommando angeben&lt;br /&gt;
*mit dem Kommando &amp;quot;builtin&amp;quot; kann z. B. für den echo-Befehl einen Alias einrichten: &lt;br /&gt;
 $ alias echo=&#039;echo -e&#039; &lt;br /&gt;
*wird echo im Originalzustand gebraucht, erfolgt der Aufruf durch: &lt;br /&gt;
 $ builtin echo&lt;br /&gt;
&lt;br /&gt;
=Konfigurationsdateien der Bash=&lt;br /&gt;
*In den unterschiedlichen Linux-Distributionen kann es zu unterschiedlichen Konstrukten der Konfigurationsdateien kommen&lt;br /&gt;
*Konfigurationsdateien, die für alle Anwender Gültigkeit haben, befinden sich im Verzeichnis /etc und beginnen niemals mit einem Punkt &lt;br /&gt;
*individuelle Konfigurationsdateien für den jeweiligen User befinden sich im entsprechenden Heimatverzeichnis und beginnen immer mit einem Punkt&lt;br /&gt;
==Systemweite Konfigurationsdateien==&lt;br /&gt;
Die systemweiten Konfigurationsdateien sind für jeden Benutzer gültig, der sich am System anmeldet. &lt;br /&gt;
Die beiden gängigsten sind folgende: &lt;br /&gt;
* /etc/profile ist die erste Konfigurationsdatei, die bei der Anmeldung (Login- Shell) eines Benutzers eingelesen wird&lt;br /&gt;
**enthält erste Umgebungsvariablen und die erste PATH-Anweisun&lt;br /&gt;
**Änderungen in dieser Datei erfordern eine neue Anmeldung des Benutzers &lt;br /&gt;
* /etc/bash.bashrc enthält systemweite Einstellungen, Aliase und Funktionen&lt;br /&gt;
**wird beim Start jeder Shell neu eingelesen und erfordert deshalb nach Änderung keine Neuanmeldung des Benutzers&lt;br /&gt;
==Konfigurationsdateien für den Benutzer==&lt;br /&gt;
Die folgenden Dateien befinden sich im Heimatverzeichnis eines jeden Benutzers und dürfen auch durch seinen Besitzer modifiziert werden:&lt;br /&gt;
* ~/.bash_profile wird (falls vorhanden) nur bei einer Neuanmeldung eingelesen und sofort nach /etc/profile ausgeführt &lt;br /&gt;
**beinhaltet zusätzliche Pfadanweisungen, den zu verwendenden Standardeditor und benutzerspezifische Umgebungsvariablen&lt;br /&gt;
* ~/.bash_login ist eine Alternative zu .bash_profile &lt;br /&gt;
**wird auch nur dann abgearbeitet, wenn die Datei .bash_profile nicht existiert&lt;br /&gt;
**diese Datei wird nur während der Anmeldung verwendet&lt;br /&gt;
**Inhalt und der Verwendungszweck entsprechen der .bash_profile &lt;br /&gt;
* ~/.profile ist die ursprüngliche Konfigurationsdatei der Bash &lt;br /&gt;
**wird nur während der Anmeldung (für die Login-Shell) eingelesen, aber nur wenn weder eine .bash_profile- noch eine .bash_login-Datei im Verzeichnis des Benutzers existieren&lt;br /&gt;
**Inhalt und Verwendungszweck entsprechen der .bash_profile und .bash_login&lt;br /&gt;
* ~/.bashrc ist die andere, ursprüngliche Konfigurationsdatei der Bash &lt;br /&gt;
**wird in jedem Fall eingelesen, und zwar auch beim Aufruf einer neuen Shell&lt;br /&gt;
**nach Änderungen in dieser Datei ist keine Neuanmeldung des Benutzers erforderlich&lt;br /&gt;
**beinhaltet im Wesentlichen Aliase und Funktionen.&lt;br /&gt;
* ~/.bash_logout ist eine optionale Datei&lt;br /&gt;
**wird ausgeführt wenn der Benutzer sich abmeldet&lt;br /&gt;
==Konfiguration &amp;quot;on the fly&amp;quot; einlesen==&lt;br /&gt;
*wurden neue Variablen in den Konfigurationsdateien deklariert, können diese sofort wirksam gemacht werden, indem man das Shell-interne Kommando source verwendet &lt;br /&gt;
 $ source /etc/profile&lt;br /&gt;
&lt;br /&gt;
=Skeleton-Verzeichnis /etc/skel=&lt;br /&gt;
*eine Vorlage für das Heimatverzeichnis eines neuen Benutzers&lt;br /&gt;
*beim Erstellen eines neuen Benutzerkontos mit useradd -m &amp;quot;username&amp;quot; wird, ein Verzeichnis namens /home/&amp;quot;username&amp;quot; erstellt&lt;br /&gt;
*der Inhalt des Skeleton-Verzeichnisses wird dann in das Verzeichnis /home/&amp;quot;username&amp;quot; kopiert&lt;br /&gt;
*die Berechtigungen werden für das Verzeichnis und dessen Inhalt auf den neuen Benutzer abgestimmt&lt;br /&gt;
*Speicherort ist normalerweise /etc/skel&lt;br /&gt;
&lt;br /&gt;
=Kontrollfragen=&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Frage 1&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;Antwort&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Frage 2&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;Antwort&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Frage 3&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;Antwort&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Frage 4&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;Antwort&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Frage 5&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;Antwort&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:LPIC102]]&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=LPIC102/105.1_Die_Shell-Umgebung_anpassen_und_verwenden&amp;diff=7402</id>
		<title>LPIC102/105.1 Die Shell-Umgebung anpassen und verwenden</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=LPIC102/105.1_Die_Shell-Umgebung_anpassen_und_verwenden&amp;diff=7402"/>
		<updated>2019-12-11T21:03:59Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: /* Umgebungsvariablen und Shellvariablen */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Wichtigste Wissensgebiete=&lt;br /&gt;
*Umgebungsvariable  (etwa  PATH)  beim  Anmelden  oder  Erzeugen  einer  neuen Shell setzen&lt;br /&gt;
&lt;br /&gt;
*Bash-Funktionen für häufig gebrauchte Kommandofolgen schreiben&lt;br /&gt;
&lt;br /&gt;
*Skelettverzeichnisse für neue Benutzerkonten pflegen&lt;br /&gt;
&lt;br /&gt;
*den Kommando-Suchpfad mit den richtigen Verzeichnissen setzen&lt;br /&gt;
=Allgemeines=&lt;br /&gt;
*Linux ist wohl das anpassungsfähigste Betriebssystem, das es gibt&amp;lt;br&amp;gt;&lt;br /&gt;
*Das trifft auch auf die  verschiedenen  Linux-Shells  zu, die  Sie  sehr  leicht  an  Ihre  eigenen  Bedürfnisse anpassen können&amp;lt;br&amp;gt;&lt;br /&gt;
*Alles, was Sie dazu brauchen, sind ein paar Befehle, Variablen und Konfigurationsdateien. Aber was ist überhaupt eine Shell?&lt;br /&gt;
&lt;br /&gt;
==Was is eine Shell==&lt;br /&gt;
*Ein textbasiertes Programm, dass als Schnittstelle zwischen Benutzer und Computer fungiert&lt;br /&gt;
*Benutzer kann durch die Shell mit dem Kernel kommunizieren&lt;br /&gt;
*Der englische Begriff Kernel zu Deutsch Kern heißt und eine Shell eine Schale ist, wird wohl sehr schnell klar, wie diese beiden Fachbegriffe entstanden sind und wo eine solche Shell im System-Gefüge angesiedelt ist&lt;br /&gt;
*Umgebung für die Ausführung von Skripten und Programmen&lt;br /&gt;
*Man kann sie im weitesten Sinne auch noch als Programmierumgebung betrachten&lt;br /&gt;
*Die am weitesten verbreitete Shell ist die &amp;quot;bash&amp;quot; (Bourne Again Shell)&lt;br /&gt;
*&amp;quot;sh&amp;quot; ist der Vorfahre der Bash&lt;br /&gt;
&lt;br /&gt;
==Umgebungsvariablen und Shellvariablen==&lt;br /&gt;
*Die Unterschiede zwischen diesen beiden Variablentypen liegen einerseits drin.&lt;br /&gt;
*Durch welche Konfigurationsdateien sie deklariert werden&lt;br /&gt;
*Und demzufolge wann und durch welches Programm sie ausgewertet werden&lt;br /&gt;
*Und andererseits in ihrem Wirkungsbereich:&lt;br /&gt;
&amp;lt;big&amp;gt;&#039;&#039;&#039;Umgebungsvariablen:&#039;&#039;&#039;&amp;lt;/big&amp;gt;  &lt;br /&gt;
*Gelten  für  alle  Shells,  die  ein  Benutzer  verwendet&lt;br /&gt;
*Die Inhalte  dieser  Variablen  werden  an  Subshells  vererbt.  Das  bedeutet,  dass  beim Aufruf  einer  Subshell  ein  automatischer  Export  der  Variablen  in  diese Subshell stattfindet&lt;br /&gt;
*Bei   Umgebungsvariablen   werden   normalerweise   Großbuchstaben verwendet&lt;br /&gt;
&amp;lt;big&amp;gt;&#039;&#039;&#039;Shellvariablen:&#039;&#039;&#039;&amp;lt;/big&amp;gt;&lt;br /&gt;
*Müssen  in  jeder  Subshell, die  durch  den  Benutzer  oder  ein  Skript gestartet  wird,  neu  deklariert werden&lt;br /&gt;
*Es findet  standardmäßig  keine  Vererbung statt&amp;lt;br&amp;gt;&lt;br /&gt;
*Für Shellvariablen verwendet man üblicherweise Kleinbuchstaben&lt;br /&gt;
&amp;lt;big&amp;gt;&#039;&#039;&#039;Variablen:&#039;&#039;&#039;&amp;lt;/big&amp;gt;&lt;br /&gt;
*Die Bash unterscheidet zwischen Groß- und Kleinschreibweise &lt;br /&gt;
*Die Konventionen bezüglich der Schreibweisen bei Umgebungs- oder Shellvariablen werden von einigen Distributionen nicht eingehalten&lt;br /&gt;
&amp;lt;big&amp;gt;&#039;&#039;&#039;Variablen deklarieren:&#039;&#039;&#039;&amp;lt;/big&amp;gt;&lt;br /&gt;
*Die Deklaration und Abfrage einer Shellvariable erfolgt recht einfach:&lt;br /&gt;
 $ a=5&lt;br /&gt;
 $ b=6&lt;br /&gt;
 $ let c=$a+$b&lt;br /&gt;
 $ echo $c=$a+$b&lt;br /&gt;
 11=5+6&lt;br /&gt;
*Die Variablen a und b mit den Werten 5 und 6 gefüllt&lt;br /&gt;
*Dritte Zeile sorgt, dass Variable c das Ergebnis der Summe aus $a und $b wird&lt;br /&gt;
*Letzte Zeile gibt die komplette Operation aus&lt;br /&gt;
*Inhalte einer Variablen bleiben innerhalb einer Shell erhalten =&amp;gt; die Variable kann wiederholt abgerufen oder verwendet werden&lt;br /&gt;
 $ echo $c&lt;br /&gt;
 11&lt;br /&gt;
*Der Bfehl &amp;lt;code&amp;gt;[[Linuxbefehl: declare|declare]]&amp;lt;/code&amp;gt; setzt Variablenwerte und deren Attribute.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;&#039;&#039;&#039;Variablen exportieren:&#039;&#039;&#039;&amp;lt;/big&amp;gt;&lt;br /&gt;
*Wird eine Subshell aufgerufen, steht diese Variable nicht mehr zur Verfügung, weil es sich nicht um eine Umgebungsvariable handelt &lt;br /&gt;
*Es ist aber möglich, eine Variable für eine Subshell verfügbar zu machen, indem man diese exportiert&lt;br /&gt;
*Ein solcher Export erfolgt nur an untergeordnete, jedoch nie an übergeordnete Shells &lt;br /&gt;
*Export bewirkt nicht, dass aus einer Shellvariable eine Umgebungsvariable wird &lt;br /&gt;
*Der Exportbefehl kann auf zwei Arten durchgeführt werden:&lt;br /&gt;
 $ export c&lt;br /&gt;
 $ sh&lt;br /&gt;
 sh-3.00# echo $c&lt;br /&gt;
 11&lt;br /&gt;
*In der ersten Variante wurde die Variable c aus dem vorangegangenen Beispiel exportiert und anschließend wurde mit sh eine neue Subshell geöffnet und dann mit echo $c auf dem Bildschirm ausgegeben&lt;br /&gt;
*Die zweite Methode sieht folgendermaßen aus:&lt;br /&gt;
 $ export z=1000&lt;br /&gt;
 $ sh&lt;br /&gt;
 sh-3.00# echo $z&lt;br /&gt;
 1000&lt;br /&gt;
*Die Deklaration der Variablen und der Export sind mit einem Befehl durchgeführt worden&lt;br /&gt;
*Mit echo $z wird demonstriert, dass der Inhalt der Variablen in der Ziel-Shell angekommen ist&lt;br /&gt;
&amp;lt;big&amp;gt;&#039;&#039;&#039;Variablen einsehen:&#039;&#039;&#039;&amp;lt;/big&amp;gt;&lt;br /&gt;
*Mit dem Befehl [[Linuxbefehl: set|set]] ohne Angabe von Parametern kann man nachsehen, welche Umgebungs- und Shellvariablen die aktuelle Shell gerade verwendet&lt;br /&gt;
*Die Ausgabe an less weitergebn, damit Sie den Inhalt in Ruhe untersuchen können&lt;br /&gt;
*Eine gekürzte Ausgabe könnte Folgendes enthalten:&lt;br /&gt;
 $ set | less&lt;br /&gt;
 a=5&lt;br /&gt;
 b=6&lt;br /&gt;
 BASH=/bin/bash&lt;br /&gt;
 c=11&lt;br /&gt;
 HISTSIZE=1000&lt;br /&gt;
 HOME=/root&lt;br /&gt;
 HOSTNAME=archangel&lt;br /&gt;
 MANPATH=/usr/share/man:/usr/local/man:/usr/X11R6/man:/opt/gnome/share/man&lt;br /&gt;
 PAGER=less&lt;br /&gt;
 PATH=/sbin:/usr/sbin:/usr/local/sbin:/root/bin:/usr/local/bin:/usr/bin:/usr/&lt;br /&gt;
 X11R&lt;br /&gt;
*Umgebungsvariablen können mit dem Kommando [[Linuxbefehl: env|env]] eingesehen werden &lt;br /&gt;
*Es ist ratsam, die Ausgabe mit less zu betrachten&lt;br /&gt;
&amp;lt;big&amp;gt;&#039;&#039;&#039;Variablen löschen:&#039;&#039;&#039;&amp;lt;/big&amp;gt;&lt;br /&gt;
*Variablen werden mit dem Befehl unset gelöscht&lt;br /&gt;
*Um die Variablen aus den vorherigen Beispielen zu entfernen, geben Sie Folgendes ein:&lt;br /&gt;
 $ unset a&lt;br /&gt;
 $ unset b&lt;br /&gt;
 $ unset c&lt;br /&gt;
oder einfacher:&lt;br /&gt;
 $ unset a b c&lt;br /&gt;
Zur Überprüfung:&lt;br /&gt;
 $ set | less&lt;br /&gt;
 BASH=/bin/bash&lt;br /&gt;
 HISTSIZE=1000&lt;br /&gt;
 ...&lt;br /&gt;
*Die Variablen a, b und c wurden gelöscht&lt;br /&gt;
*Alternativ ist eine Neuanmeldung möglich, denn es handelt sich um Shellvariablen, die bei Abmeldung nicht erhalten bleiben&lt;br /&gt;
&lt;br /&gt;
==Aliase und Funktionen==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;&#039;&#039;&#039;Aliase:&#039;&#039;&#039;&amp;lt;/big&amp;gt;&lt;br /&gt;
*Für Befehle in Kombination mit bestimmten Parametern oder langen Befehlen die häufiger verwendet werden ist es empfehlenswert ein Alias anzulegen&lt;br /&gt;
*Es ist möglich, mehrere Kommandos in einem einzigen Befehl zu kombinieren, indem Diese durch Semikolons &amp;quot;;&amp;quot; voneinander getrennt werden. Hier ein Beispiel:&lt;br /&gt;
 $ alias frei=&amp;quot;free; df&amp;quot;&lt;br /&gt;
 $ frei&lt;br /&gt;
               total        used        free      shared  buff/cache   available&lt;br /&gt;
 Mem:        3870884     1001952     1608764      124880     1260168     2512240&lt;br /&gt;
 Swap:       7811068           0     7811068&lt;br /&gt;
 Dateisystem    1K-Blöcke Benutzt Verfügbar Verw% Eingehängt auf&lt;br /&gt;
 udev             1924160       0   1924160    0% /dev&lt;br /&gt;
 tmpfs             387092    5896    381196    2% /run&lt;br /&gt;
 /dev/sda2       38186548 7072220  29144820   20% /&lt;br /&gt;
 tmpfs            1935440   11096   1924344    1% /dev/shm&lt;br /&gt;
 tmpfs               5120       4      5116    1% /run/lock&lt;br /&gt;
 tmpfs            1935440       0   1935440    0% /sys/fs/cgroup&lt;br /&gt;
 tmpfs             387088       0    387088    0% /run/user/113&lt;br /&gt;
 tmpfs             387088      12    387076    1% /run/user/1000&lt;br /&gt;
*es wird mit einem einzigen Befehl die Festplatten- und Speicherbelegung überprüft, allerdings geht die Definition der Aliase bei einer Neuanmeldung am System verloren&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;&#039;&#039;&#039;Funktionen:&#039;&#039;&#039;&amp;lt;/big&amp;gt;&lt;br /&gt;
*Einschränkungen des Alias ist, dass der Übergabewerte ($1, $2 usw.) nur einmal ausgewertet werden kann, bei einer Funktion gibt es diese Einschränkung nicht &lt;br /&gt;
*Eine Funktion ist ein Unterprogramm, das man für wiederkehrende Aufgaben verwenden kann&lt;br /&gt;
*Kann in einer Shell sowohl von einem Benutzer als auch von einem Skript aufgerufen werden&lt;br /&gt;
*Der Aufbau einer Funktion sieht immer so aus:&lt;br /&gt;
 $ function Funktionsname() &lt;br /&gt;
 { &lt;br /&gt;
 Befehl 1 &lt;br /&gt;
 Befehl 2 &lt;br /&gt;
 ... &lt;br /&gt;
 Befehl n &lt;br /&gt;
 }&lt;br /&gt;
*&amp;quot;function&amp;quot; kann auch einfach weggelassen werden, weil die Bash an den beiden Klammern erkennt, dass es sich um eine Funktion handelt&lt;br /&gt;
*Das Beispiel demonstriert, dass es mit einer Funktion sogar möglich ist, Rechenoperationen auszuführen:&lt;br /&gt;
function addiere () &lt;br /&gt;
 &amp;gt; { &lt;br /&gt;
 &amp;gt; let summe=$1+$2 &lt;br /&gt;
 &amp;gt; echo -e &amp;quot;Die Summe ist $summe&amp;quot; &lt;br /&gt;
 &amp;gt; } &lt;br /&gt;
 addiere 3 4 &lt;br /&gt;
 Die Summe ist 7&lt;br /&gt;
*eine Funktion namens addiere wurde erstellt&lt;br /&gt;
*Die geschweiften Klammern sorgen dafür, dass diese mehrzeilige Anweisung als ein einziger Befehl interpretiert wird&lt;br /&gt;
*&amp;quot;let summe=$1+$2&amp;quot; sorgt dafür, dass der Variable &amp;quot;summe&amp;quot; die Summe aus den beiden Übergabevariablen $1 und $2 übergeben wird&lt;br /&gt;
*In der nächsten Zeile erfolgt die Ausgabe&lt;br /&gt;
*Es ist auch möglich, eine Funktion in einer einzigen Zeile zu erstellen:&lt;br /&gt;
 $ function addiere { let summe=$1+$2; echo &amp;quot;Die Summe ist $summe&amp;quot;; }&lt;br /&gt;
*die beiden Leerzeichen innerhalb der geschweiften Klammern sind notwendig und dienen nicht nur der Übersichtlichkeit&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;&#039;&#039;&#039;builtin:&#039;&#039;&#039;&amp;lt;/big&amp;gt;&lt;br /&gt;
*wird verwendet falls der Name der Bezeichnung für die eigenen Funktionen und Aliase vergeben ist &lt;br /&gt;
*wenn man eine Funktion oder einen Alias erstellen möchte, welches namentlich mit einem existierenden Kommando übereinstimmt, müsste man zum Aufruf des ursprünglichen Kommandos den kompletten Pfad zu diesem Kommando angeben&lt;br /&gt;
*mit dem Kommando &amp;quot;builtin&amp;quot; kann z. B. für den echo-Befehl einen Alias einrichten: &lt;br /&gt;
 $ alias echo=&#039;echo -e&#039; &lt;br /&gt;
*wird echo im Originalzustand gebraucht, erfolgt der Aufruf durch: &lt;br /&gt;
 $ builtin echo&lt;br /&gt;
&lt;br /&gt;
=Konfigurationsdateien der Bash=&lt;br /&gt;
*In den unterschiedlichen Linux-Distributionen kann es zu unterschiedlichen Konstrukten der Konfigurationsdateien kommen&lt;br /&gt;
*Konfigurationsdateien, die für alle Anwender Gültigkeit haben, befinden sich im Verzeichnis /etc und beginnen niemals mit einem Punkt &lt;br /&gt;
*individuelle Konfigurationsdateien für den jeweiligen User befinden sich im entsprechenden Heimatverzeichnis und beginnen immer mit einem Punkt&lt;br /&gt;
==Systemweite Konfigurationsdateien==&lt;br /&gt;
Die systemweiten Konfigurationsdateien sind für jeden Benutzer gültig, der sich am System anmeldet. &lt;br /&gt;
Die beiden gängigsten sind folgende: &lt;br /&gt;
* /etc/profile ist die erste Konfigurationsdatei, die bei der Anmeldung (Login- Shell) eines Benutzers eingelesen wird&lt;br /&gt;
**enthält erste Umgebungsvariablen und die erste PATH-Anweisun&lt;br /&gt;
**Änderungen in dieser Datei erfordern eine neue Anmeldung des Benutzers &lt;br /&gt;
* /etc/bash.bashrc enthält systemweite Einstellungen, Aliase und Funktionen&lt;br /&gt;
**wird beim Start jeder Shell neu eingelesen und erfordert deshalb nach Änderung keine Neuanmeldung des Benutzers&lt;br /&gt;
==Konfigurationsdateien für den Benutzer==&lt;br /&gt;
Die folgenden Dateien befinden sich im Heimatverzeichnis eines jeden Benutzers und dürfen auch durch seinen Besitzer modifiziert werden:&lt;br /&gt;
* ~/.bash_profile wird (falls vorhanden) nur bei einer Neuanmeldung eingelesen und sofort nach /etc/profile ausgeführt &lt;br /&gt;
**beinhaltet zusätzliche Pfadanweisungen, den zu verwendenden Standardeditor und benutzerspezifische Umgebungsvariablen&lt;br /&gt;
* ~/.bash_login ist eine Alternative zu .bash_profile &lt;br /&gt;
**wird auch nur dann abgearbeitet, wenn die Datei .bash_profile nicht existiert&lt;br /&gt;
**diese Datei wird nur während der Anmeldung verwendet&lt;br /&gt;
**Inhalt und der Verwendungszweck entsprechen der .bash_profile &lt;br /&gt;
* ~/.profile ist die ursprüngliche Konfigurationsdatei der Bash &lt;br /&gt;
**wird nur während der Anmeldung (für die Login-Shell) eingelesen, aber nur wenn weder eine .bash_profile- noch eine .bash_login-Datei im Verzeichnis des Benutzers existieren&lt;br /&gt;
**Inhalt und Verwendungszweck entsprechen der .bash_profile und .bash_login&lt;br /&gt;
* ~/.bashrc ist die andere, ursprüngliche Konfigurationsdatei der Bash &lt;br /&gt;
**wird in jedem Fall eingelesen, und zwar auch beim Aufruf einer neuen Shell&lt;br /&gt;
**nach Änderungen in dieser Datei ist keine Neuanmeldung des Benutzers erforderlich&lt;br /&gt;
**beinhaltet im Wesentlichen Aliase und Funktionen.&lt;br /&gt;
* ~/.bash_logout ist eine optionale Datei&lt;br /&gt;
**wird ausgeführt wenn der Benutzer sich abmeldet&lt;br /&gt;
==Konfiguration &amp;quot;on the fly&amp;quot; einlesen==&lt;br /&gt;
*wurden neue Variablen in den Konfigurationsdateien deklariert, können diese sofort wirksam gemacht werden, indem man das Shell-interne Kommando source verwendet &lt;br /&gt;
 $ source /etc/profile&lt;br /&gt;
&lt;br /&gt;
=Skeleton-Verzeichnis /etc/skel=&lt;br /&gt;
*eine Vorlage für das Heimatverzeichnis eines neuen Benutzers&lt;br /&gt;
*beim Erstellen eines neuen Benutzerkontos mit useradd -m &amp;quot;username&amp;quot; wird, ein Verzeichnis namens /home/&amp;quot;username&amp;quot; erstellt&lt;br /&gt;
*der Inhalt des Skeleton-Verzeichnisses wird dann in das Verzeichnis /home/&amp;quot;username&amp;quot; kopiert&lt;br /&gt;
*die Berechtigungen werden für das Verzeichnis und dessen Inhalt auf den neuen Benutzer abgestimmt&lt;br /&gt;
*Speicherort ist normalerweise /etc/skel&lt;br /&gt;
&lt;br /&gt;
=Kontrollfragen=&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Frage 1&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;Antwort&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Frage 2&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;Antwort&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Frage 3&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;Antwort&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Frage 4&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;Antwort&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Frage 5&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;Antwort&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:LPIC102]]&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=LPIC101/103.1_Auf_der_Kommandozeile_arbeiten&amp;diff=7381</id>
		<title>LPIC101/103.1 Auf der Kommandozeile arbeiten</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=LPIC101/103.1_Auf_der_Kommandozeile_arbeiten&amp;diff=7381"/>
		<updated>2019-12-10T12:52:21Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: /* Kontrollfragen */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Wichtigste Wissensgebiete=&lt;br /&gt;
*Einzelne Shell-Kommandos und einzeilige Kommandofolgen verwenden, um einfache Aufgaben auf der Kommandozeile zu lösen&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Die Shell-Umgebung verwenden und anpassen, etwa um Umgebungsvariablen zu definieren, zu verwenden und zu exportieren&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Die command-history verwenden und ändern&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kommandos innerhalb und außerhalb des definierten Suchpfads aufrufen&lt;br /&gt;
=Wichtiger Dateien, Verzeichnisse und Anwendungen=&lt;br /&gt;
&amp;lt;div style=&amp;quot;column-count:2;-moz-column-count:2;-webkit-column-count:2&amp;quot;&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: bash, echo, export, unset|bash]]&amp;lt;/code&amp;gt;       &lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: which, type#Linuxbefehl: type|type]]&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: bash, echo, export, unset|echo]]&amp;lt;/code&amp;gt;       &lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: which, type|which]]&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: env|env]]&amp;lt;/code&amp;gt;        &lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: man|man]]&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: bash, echo, export, unset|export]]&amp;lt;/code&amp;gt;     &lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: uname|uname]]&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;[[103.1 Auf der Kommandozeile arbeiten#PATH-Variable|pwd]]&amp;lt;/code&amp;gt;        &lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: set|set]]&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: bash, echo, export, unset|unset]]&amp;lt;/code&amp;gt;     &lt;br /&gt;
*&amp;lt;code&amp;gt;[[Bash-History|history]]&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;&#039;&#039;&#039;[[Bash-History|.bash_history]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;      &lt;br /&gt;
*&amp;lt;code&amp;gt;&#039;&#039;&#039;[[Quoting]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Allgemeines=&lt;br /&gt;
*Damit  man  im  Textmodus  mit  dem  Computer  kommunizieren  kann, benötigt man eine Shell. Man kann über diese Shell mit dem Kern(el) Informationen austauschen&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Unter Linux wird standardmäßig die Bash als Shell verwendet. Hierbei handelt es sich um eine Weiterentwicklung  der ursprünglichen  Unix-Shell &#039;&#039;sh&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Die Shell &#039;&#039;sh&#039;&#039; ist immer noch Bestandteil von Linux, wird aber zumindest als Login-Shell  nicht  mehr  so  oft  verwendet&lt;br /&gt;
==Aufbau eines Shell-Kommandos==&lt;br /&gt;
*Ein Kommando besteht aus bis zu drei verschiedenen Komponenten. Die erste Komponente  ist  das  Kommando  selbst,  also  eine ausführbare  Datei,  ein  Skript  oder  ein Shell-interner  Befehl&amp;lt;br&amp;gt;&lt;br /&gt;
*Ein  Kommando  kann  auch  für  sich  allein  stehen  und ohne Optionen oder Argumente funktionieren:&lt;br /&gt;
 archangel:~ # mount&lt;br /&gt;
*Wenn das Kommando &amp;lt;code&amp;gt;mount&amp;lt;/code&amp;gt; ohne Optionen oder Argumente ausgeführt wird, zeigt es aktuell eingehängte Dateisysteme an Es gibt aber auch Konstellationen, in denen ein Kommando mit einer oder mehreren Optionen ausgeführt wird:&lt;br /&gt;
 archangel:~ # mount -a&lt;br /&gt;
*In diesem Beispiel wurde &amp;lt;code&amp;gt;mount&amp;lt;/code&amp;gt; mit der Option &amp;lt;code&amp;gt;-a&amp;lt;/code&amp;gt;  ausgeführt.  Das  Programm  &amp;lt;code&amp;gt;mount&amp;lt;/code&amp;gt; würde mit dieser Option alle in der Datei &#039;&#039;/etc/fstab&#039;&#039; aufgeführten Dateisysteme einhängen&amp;lt;br&amp;gt;&lt;br /&gt;
*Es ist aber auch möglich, &amp;lt;code&amp;gt;mount&amp;lt;/code&amp;gt; ausschließlich mit Argumenten zu versehen:&lt;br /&gt;
 archangel:~ # mount /dev/sda1 /boot&lt;br /&gt;
*Argumente  unterscheiden  sich  von  Optionen.  Eine  Option  sagt  einem  Programm, wie es sich verhalten soll. Argumente teilen einem Programm mit, was es verarbeiten soll&amp;lt;br&amp;gt;&lt;br /&gt;
*Es  ist  möglich,  einem  Programm  sowohl  mehrere  Optionen  als  auch mehrere Argumente zu übergeben. Bei vielen Programmen ist die Reihenfolge sogar variabel:&lt;br /&gt;
 mount -o username=antje,password=xy //fs1/data /mnt/ -t smbfs&lt;br /&gt;
*Das Beispiel zeigt eine Mischung mit einer Option vorn, einer Option hinten und den Argumenten in der Mitte. Der &amp;lt;code&amp;gt;mount&amp;lt;/code&amp;gt;-Befehl baut in diesem Fall eine Netzwerkverbindung zu einem Windows-Computer auf&lt;br /&gt;
==Übergabe der Optionen==&lt;br /&gt;
*Bei der Übergabe von Optionen gibt es mehrere gängige Methoden&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Einige Kommandos verlangen, dass den Optionen ein Bindestrich vorangestellt wird, andere arbeiten auch ohne einleitenden Bindestrich&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Viele Programme sehen vor, dass ganze Wörter als Optionen verwendet werden. Diesen werden in der Regel zwei Bindestriche vorangestellt. Das folgende Beispiel kennen Sie sinngemäß schon aus dem vorangegangenen Kapitel:&lt;br /&gt;
 archangel:~ # rpm --install -vh /i586/fortune-1.0-860.i586.rpm&lt;br /&gt;
 Preparing.. ########################################### [100 %]&lt;br /&gt;
*Ein weiterer prominenter Vertreter der flexiblen Programme ist &amp;lt;code&amp;gt;tar&amp;lt;/code&amp;gt; . Man kann &amp;lt;code&amp;gt;tar&amp;lt;/code&amp;gt; mit normalen Optionen oder Optionswörtern verwenden. Außerdem kann &amp;lt;code&amp;gt;tar&amp;lt;/code&amp;gt; auch Optionen ohne vorangestellte Bindestriche übernehmen. Die folgenden vier Kommandos führen bei &amp;lt;code&amp;gt;tar&amp;lt;/code&amp;gt; zum selben Ergebnis:&lt;br /&gt;
 # tar -x -z -v -f xmbmon205.tar.gz&lt;br /&gt;
 # tar -xzvf xmbmon205.tar.gz&lt;br /&gt;
 # tar xvzf xmbmon205.tar.gz&lt;br /&gt;
 # tar --extract --gzip --verbose --file=xmbmon205.tar.gz&lt;br /&gt;
==Umgebungsvariablen und Shellvariablen==&lt;br /&gt;
*Die Unterschiede zwischen diesen beiden Variablentypen liegen einerseits drin.&lt;br /&gt;
*Durch welche Konfigurationsdateien sie deklariert werden&lt;br /&gt;
*Und demzufolge wann und durch welches Programm sie ausgewertet werden&lt;br /&gt;
*Und andererseits in ihrem Wirkungsbereich:&lt;br /&gt;
**&#039;&#039;&#039;Umgebungsvariablen:&#039;&#039;&#039;  &lt;br /&gt;
***Gelten  für  alle  Shells,  die  ein  Benutzer  verwendet&lt;br /&gt;
***Die Inhalte  dieser  Variablen  werden  an  Subshells  vererbt.  Das  bedeutet,  dass  beim Aufruf  einer  Subshell  ein  automatischer  Export  der  Variablen  in  diese Subshell stattfindet&lt;br /&gt;
***Bei   Umgebungsvariablen   werden   normalerweise   Großbuchstaben verwendet&lt;br /&gt;
**&#039;&#039;&#039;Shellvariablen:&#039;&#039;&#039;&lt;br /&gt;
***Müssen  in  jeder  Subshell, die  durch  den  Benutzer  oder  ein  Skript gestartet  wird,  neu  deklariert werden&lt;br /&gt;
***Es findet  standardmäßig  keine  Vererbung statt&amp;lt;br&amp;gt;&lt;br /&gt;
***Für Shellvariablen verwendet man üblicherweise Kleinbuchstaben&lt;br /&gt;
&lt;br /&gt;
==PATH-Variable==&lt;br /&gt;
*Wenn  man  ein  Programm  ausführen  will,  das  sich  nicht  in  einem  in  Ihrer  PATH-Variablen enthaltenen Verzeichnis befindet, muss man den kompletten Pfad zu diesem Programm auf der Kommandozeile mit angeben&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Wenn man ein Programm ohne Angabe eines Pfades startet, prüft die Shell zunächst, ob es sich um ein internes Kommando  der  Shell  handelt.  Dazu  zählen:  &amp;lt;code&amp;gt;echo, bg, fg,jobs, kill, pwd, set, unset&amp;lt;/code&amp;gt; und viele mehr&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Falls  kein  passendes  Kommando  gefunden wird,  sucht  die  Shell  das  Programm  inallen Verzeichnissen, die in der PATH-Variablen enthalten sind&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Sollten mehrere Programme mit dem gleichen Namen vorhanden sein, wird das zuerst gefundene ausgeführt.  Man kann in  einem  solchen  Fall  das  Kommando  &amp;lt;code&amp;gt;which&amp;lt;/code&amp;gt; verwenden,  um festzustellen, welches Programm die Shell automatisch ausführt:&lt;br /&gt;
 archangel:~ # which less&lt;br /&gt;
 /usr/bin/less&lt;br /&gt;
*Es ist zu beachten, dass ein Programm auch dann nicht ohne Pfadangabe ausgeführt wird, wenn man sich aktuell in dessen Verzeichnis befindet. Dieses Verhalten gibt esunter DOS, aber nicht bei Linux&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Man kann ein Programm, das sich im aktuellen Verzeichnis  befindet,  aber  auch  starten,  indem  Sie  &#039;&#039;./&#039;&#039;  dem  Programm voranstellen.  Die Zeichen &#039;&#039;./&#039;&#039; repräsentieren  das  aktuelle  Verzeichnis.  Sie  können  z. B.  Konfigurationsskripte  von  Tar-Balls  im  aktuellen  Verzeichnis  ausführen,  indem  Sie  folgende Syntax verwenden:&lt;br /&gt;
 archangel:/usr/src/xmbmon205 # ./configure&lt;br /&gt;
*Wenn man einen Prompt verwendet, der ihn nicht anzeigt, in welchem Verzeichnis man sich gerade befindet, verwendet man das Kommando &amp;lt;code&amp;gt;pwd&amp;lt;/code&amp;gt; &#039;&#039;(Path of Working Directory)&#039;&#039; ohne Optionen. Der Pfad wird Ihnen dann angezeigt:&lt;br /&gt;
 archangel:/usr/src/xmbmon205 # pwd&lt;br /&gt;
 /usr/src/xmbmon205&lt;br /&gt;
*Man kann sich den Inhalt Ihrer PATH-Variablen, genau wie den anderer Variablen, anzeigen lassen:&lt;br /&gt;
 archangel:/ # echo $PATH&lt;br /&gt;
 /sbin:/usr/sbin:/usr/local/sbin:/root/bin:/usr/local/bin:/usr/bin:/usr/X11R6/&lt;br /&gt;
 bin:/bin:/usr/games:/opt/gnome/bin:/opt/kde3/bin:/usr/lib/jvm/jre/bin&lt;br /&gt;
==Beliebte Variablen für Prüfungen==&lt;br /&gt;
Manche  Variablen  werden  in  der  Prüfung  immer  wieder  abgefragt.  Dazu  gehören besonders die folgenden:&lt;br /&gt;
*&amp;lt;code&amp;gt;$HISTSIZE&amp;lt;/code&amp;gt; definiert die Anzahl der Kommandos, die in der Befehls-History aufbewahrt werden. Diese Variable wird normalerweise in der Datei &#039;&#039;/etc/profile&#039;&#039; festgelegt&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;$PS1&amp;lt;/code&amp;gt; bestimmt das Aussehen der Eingabeaufforderung (Prompt). Beispiel:&lt;br /&gt;
 root@archangel:~# echo $PS1&lt;br /&gt;
 \u@\h:\w$&lt;br /&gt;
*Die Zeichen &#039;&#039;\u&#039;&#039; stehen für Username&lt;br /&gt;
*Das &#039;&#039;@&#039;&#039; wird normal ausgegeben&lt;br /&gt;
*Die Zeichen &#039;&#039;\h&#039;&#039; werden mit dem Host-Namen ersetzt&lt;br /&gt;
*Es folgt ein Doppelpunkt&lt;br /&gt;
*Anschließend zeigt &#039;&#039;\w&#039;&#039; für  Working  Directory  das  aktuelle  Verzeichnis  an&lt;br /&gt;
*Die  Tilde &#039;&#039;~&#039;&#039; repräsentiert hierbei das Heimatverzeichnis des Benutzers&lt;br /&gt;
*Es folgt ein &#039;&#039;&amp;gt;&#039;&#039;&lt;br /&gt;
*Der Prompt kann durch  Änderung  der  Variablen &#039;&#039;PS1&#039;&#039; den  eigenen  Wünschen angepasst  werden&lt;br /&gt;
*Es empfiehlt sich dann eine Konfiguration in der Datei &#039;&#039;/etc/bashrc&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;$?&amp;lt;/code&amp;gt; enthält das Errorlevel des zuletzt ausgeführten Kommandos. In der Regel bedeutet der Wert 0 in dieser Variablen, dass das letzte Programm erfolgreich ausgeführt wurde. Die Fehlerwerte variieren von Programm zu Programm. Beliebte Werte sind 1 und 127. Beispiel:&lt;br /&gt;
 archangel:~ # Kommando, das es nicht gibt&lt;br /&gt;
 bash: Kommando: command not found&lt;br /&gt;
 archangel:~ # echo $?&lt;br /&gt;
 127&lt;br /&gt;
*Das »Kommando, das es nicht gibt« hat ein Errorlevel von 127 zur Folge&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;$1 , $2&amp;lt;/code&amp;gt; usw. enthalten die Optionen und Argumente, die an ein Programm übergeben werden. Sie werden im Normalfall vom gestarteten Programm oder Skript selbst ausgewertet&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Kontrollfragen=&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Welcher Befehl zeigt den vollständigen Pfad eines Kommandos an?&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;which&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Welche Variable definiert die Anzahl der Kommandos, die in der Befehls-History aufbewahrt werden?&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;$HISTSIZE&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Welches Kommando wird als Bang-Bang bezeichnet und führt den letzten Befehl der History noch einmal aus?&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;!!&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Mit welchem Befehl werden die Shellvariablen löscht?&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;unset&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Welcher Befehl zeigt die Versionsnummer des laufenden Kernels?&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;uname -r&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Linux:LPIC:101]]&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=LPIC101/103.1_Auf_der_Kommandozeile_arbeiten&amp;diff=7380</id>
		<title>LPIC101/103.1 Auf der Kommandozeile arbeiten</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=LPIC101/103.1_Auf_der_Kommandozeile_arbeiten&amp;diff=7380"/>
		<updated>2019-12-10T12:35:57Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: /* Kontrollfragen */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Wichtigste Wissensgebiete=&lt;br /&gt;
*Einzelne Shell-Kommandos und einzeilige Kommandofolgen verwenden, um einfache Aufgaben auf der Kommandozeile zu lösen&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Die Shell-Umgebung verwenden und anpassen, etwa um Umgebungsvariablen zu definieren, zu verwenden und zu exportieren&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Die command-history verwenden und ändern&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kommandos innerhalb und außerhalb des definierten Suchpfads aufrufen&lt;br /&gt;
=Wichtiger Dateien, Verzeichnisse und Anwendungen=&lt;br /&gt;
&amp;lt;div style=&amp;quot;column-count:2;-moz-column-count:2;-webkit-column-count:2&amp;quot;&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: bash, echo, export, unset|bash]]&amp;lt;/code&amp;gt;       &lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: which, type#Linuxbefehl: type|type]]&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: bash, echo, export, unset|echo]]&amp;lt;/code&amp;gt;       &lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: which, type|which]]&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: env|env]]&amp;lt;/code&amp;gt;        &lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: man|man]]&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: bash, echo, export, unset|export]]&amp;lt;/code&amp;gt;     &lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: uname|uname]]&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;[[103.1 Auf der Kommandozeile arbeiten#PATH-Variable|pwd]]&amp;lt;/code&amp;gt;        &lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: set|set]]&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: bash, echo, export, unset|unset]]&amp;lt;/code&amp;gt;     &lt;br /&gt;
*&amp;lt;code&amp;gt;[[Bash-History|history]]&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;&#039;&#039;&#039;[[Bash-History|.bash_history]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;      &lt;br /&gt;
*&amp;lt;code&amp;gt;&#039;&#039;&#039;[[Quoting]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Allgemeines=&lt;br /&gt;
*Damit  man  im  Textmodus  mit  dem  Computer  kommunizieren  kann, benötigt man eine Shell. Man kann über diese Shell mit dem Kern(el) Informationen austauschen&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Unter Linux wird standardmäßig die Bash als Shell verwendet. Hierbei handelt es sich um eine Weiterentwicklung  der ursprünglichen  Unix-Shell &#039;&#039;sh&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Die Shell &#039;&#039;sh&#039;&#039; ist immer noch Bestandteil von Linux, wird aber zumindest als Login-Shell  nicht  mehr  so  oft  verwendet&lt;br /&gt;
==Aufbau eines Shell-Kommandos==&lt;br /&gt;
*Ein Kommando besteht aus bis zu drei verschiedenen Komponenten. Die erste Komponente  ist  das  Kommando  selbst,  also  eine ausführbare  Datei,  ein  Skript  oder  ein Shell-interner  Befehl&amp;lt;br&amp;gt;&lt;br /&gt;
*Ein  Kommando  kann  auch  für  sich  allein  stehen  und ohne Optionen oder Argumente funktionieren:&lt;br /&gt;
 archangel:~ # mount&lt;br /&gt;
*Wenn das Kommando &amp;lt;code&amp;gt;mount&amp;lt;/code&amp;gt; ohne Optionen oder Argumente ausgeführt wird, zeigt es aktuell eingehängte Dateisysteme an Es gibt aber auch Konstellationen, in denen ein Kommando mit einer oder mehreren Optionen ausgeführt wird:&lt;br /&gt;
 archangel:~ # mount -a&lt;br /&gt;
*In diesem Beispiel wurde &amp;lt;code&amp;gt;mount&amp;lt;/code&amp;gt; mit der Option &amp;lt;code&amp;gt;-a&amp;lt;/code&amp;gt;  ausgeführt.  Das  Programm  &amp;lt;code&amp;gt;mount&amp;lt;/code&amp;gt; würde mit dieser Option alle in der Datei &#039;&#039;/etc/fstab&#039;&#039; aufgeführten Dateisysteme einhängen&amp;lt;br&amp;gt;&lt;br /&gt;
*Es ist aber auch möglich, &amp;lt;code&amp;gt;mount&amp;lt;/code&amp;gt; ausschließlich mit Argumenten zu versehen:&lt;br /&gt;
 archangel:~ # mount /dev/sda1 /boot&lt;br /&gt;
*Argumente  unterscheiden  sich  von  Optionen.  Eine  Option  sagt  einem  Programm, wie es sich verhalten soll. Argumente teilen einem Programm mit, was es verarbeiten soll&amp;lt;br&amp;gt;&lt;br /&gt;
*Es  ist  möglich,  einem  Programm  sowohl  mehrere  Optionen  als  auch mehrere Argumente zu übergeben. Bei vielen Programmen ist die Reihenfolge sogar variabel:&lt;br /&gt;
 mount -o username=antje,password=xy //fs1/data /mnt/ -t smbfs&lt;br /&gt;
*Das Beispiel zeigt eine Mischung mit einer Option vorn, einer Option hinten und den Argumenten in der Mitte. Der &amp;lt;code&amp;gt;mount&amp;lt;/code&amp;gt;-Befehl baut in diesem Fall eine Netzwerkverbindung zu einem Windows-Computer auf&lt;br /&gt;
==Übergabe der Optionen==&lt;br /&gt;
*Bei der Übergabe von Optionen gibt es mehrere gängige Methoden&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Einige Kommandos verlangen, dass den Optionen ein Bindestrich vorangestellt wird, andere arbeiten auch ohne einleitenden Bindestrich&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Viele Programme sehen vor, dass ganze Wörter als Optionen verwendet werden. Diesen werden in der Regel zwei Bindestriche vorangestellt. Das folgende Beispiel kennen Sie sinngemäß schon aus dem vorangegangenen Kapitel:&lt;br /&gt;
 archangel:~ # rpm --install -vh /i586/fortune-1.0-860.i586.rpm&lt;br /&gt;
 Preparing.. ########################################### [100 %]&lt;br /&gt;
*Ein weiterer prominenter Vertreter der flexiblen Programme ist &amp;lt;code&amp;gt;tar&amp;lt;/code&amp;gt; . Man kann &amp;lt;code&amp;gt;tar&amp;lt;/code&amp;gt; mit normalen Optionen oder Optionswörtern verwenden. Außerdem kann &amp;lt;code&amp;gt;tar&amp;lt;/code&amp;gt; auch Optionen ohne vorangestellte Bindestriche übernehmen. Die folgenden vier Kommandos führen bei &amp;lt;code&amp;gt;tar&amp;lt;/code&amp;gt; zum selben Ergebnis:&lt;br /&gt;
 # tar -x -z -v -f xmbmon205.tar.gz&lt;br /&gt;
 # tar -xzvf xmbmon205.tar.gz&lt;br /&gt;
 # tar xvzf xmbmon205.tar.gz&lt;br /&gt;
 # tar --extract --gzip --verbose --file=xmbmon205.tar.gz&lt;br /&gt;
==Umgebungsvariablen und Shellvariablen==&lt;br /&gt;
*Die Unterschiede zwischen diesen beiden Variablentypen liegen einerseits drin.&lt;br /&gt;
*Durch welche Konfigurationsdateien sie deklariert werden&lt;br /&gt;
*Und demzufolge wann und durch welches Programm sie ausgewertet werden&lt;br /&gt;
*Und andererseits in ihrem Wirkungsbereich:&lt;br /&gt;
**&#039;&#039;&#039;Umgebungsvariablen:&#039;&#039;&#039;  &lt;br /&gt;
***Gelten  für  alle  Shells,  die  ein  Benutzer  verwendet&lt;br /&gt;
***Die Inhalte  dieser  Variablen  werden  an  Subshells  vererbt.  Das  bedeutet,  dass  beim Aufruf  einer  Subshell  ein  automatischer  Export  der  Variablen  in  diese Subshell stattfindet&lt;br /&gt;
***Bei   Umgebungsvariablen   werden   normalerweise   Großbuchstaben verwendet&lt;br /&gt;
**&#039;&#039;&#039;Shellvariablen:&#039;&#039;&#039;&lt;br /&gt;
***Müssen  in  jeder  Subshell, die  durch  den  Benutzer  oder  ein  Skript gestartet  wird,  neu  deklariert werden&lt;br /&gt;
***Es findet  standardmäßig  keine  Vererbung statt&amp;lt;br&amp;gt;&lt;br /&gt;
***Für Shellvariablen verwendet man üblicherweise Kleinbuchstaben&lt;br /&gt;
&lt;br /&gt;
==PATH-Variable==&lt;br /&gt;
*Wenn  man  ein  Programm  ausführen  will,  das  sich  nicht  in  einem  in  Ihrer  PATH-Variablen enthaltenen Verzeichnis befindet, muss man den kompletten Pfad zu diesem Programm auf der Kommandozeile mit angeben&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Wenn man ein Programm ohne Angabe eines Pfades startet, prüft die Shell zunächst, ob es sich um ein internes Kommando  der  Shell  handelt.  Dazu  zählen:  &amp;lt;code&amp;gt;echo, bg, fg,jobs, kill, pwd, set, unset&amp;lt;/code&amp;gt; und viele mehr&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Falls  kein  passendes  Kommando  gefunden wird,  sucht  die  Shell  das  Programm  inallen Verzeichnissen, die in der PATH-Variablen enthalten sind&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Sollten mehrere Programme mit dem gleichen Namen vorhanden sein, wird das zuerst gefundene ausgeführt.  Man kann in  einem  solchen  Fall  das  Kommando  &amp;lt;code&amp;gt;which&amp;lt;/code&amp;gt; verwenden,  um festzustellen, welches Programm die Shell automatisch ausführt:&lt;br /&gt;
 archangel:~ # which less&lt;br /&gt;
 /usr/bin/less&lt;br /&gt;
*Es ist zu beachten, dass ein Programm auch dann nicht ohne Pfadangabe ausgeführt wird, wenn man sich aktuell in dessen Verzeichnis befindet. Dieses Verhalten gibt esunter DOS, aber nicht bei Linux&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Man kann ein Programm, das sich im aktuellen Verzeichnis  befindet,  aber  auch  starten,  indem  Sie  &#039;&#039;./&#039;&#039;  dem  Programm voranstellen.  Die Zeichen &#039;&#039;./&#039;&#039; repräsentieren  das  aktuelle  Verzeichnis.  Sie  können  z. B.  Konfigurationsskripte  von  Tar-Balls  im  aktuellen  Verzeichnis  ausführen,  indem  Sie  folgende Syntax verwenden:&lt;br /&gt;
 archangel:/usr/src/xmbmon205 # ./configure&lt;br /&gt;
*Wenn man einen Prompt verwendet, der ihn nicht anzeigt, in welchem Verzeichnis man sich gerade befindet, verwendet man das Kommando &amp;lt;code&amp;gt;pwd&amp;lt;/code&amp;gt; &#039;&#039;(Path of Working Directory)&#039;&#039; ohne Optionen. Der Pfad wird Ihnen dann angezeigt:&lt;br /&gt;
 archangel:/usr/src/xmbmon205 # pwd&lt;br /&gt;
 /usr/src/xmbmon205&lt;br /&gt;
*Man kann sich den Inhalt Ihrer PATH-Variablen, genau wie den anderer Variablen, anzeigen lassen:&lt;br /&gt;
 archangel:/ # echo $PATH&lt;br /&gt;
 /sbin:/usr/sbin:/usr/local/sbin:/root/bin:/usr/local/bin:/usr/bin:/usr/X11R6/&lt;br /&gt;
 bin:/bin:/usr/games:/opt/gnome/bin:/opt/kde3/bin:/usr/lib/jvm/jre/bin&lt;br /&gt;
==Beliebte Variablen für Prüfungen==&lt;br /&gt;
Manche  Variablen  werden  in  der  Prüfung  immer  wieder  abgefragt.  Dazu  gehören besonders die folgenden:&lt;br /&gt;
*&amp;lt;code&amp;gt;$HISTSIZE&amp;lt;/code&amp;gt; definiert die Anzahl der Kommandos, die in der Befehls-History aufbewahrt werden. Diese Variable wird normalerweise in der Datei &#039;&#039;/etc/profile&#039;&#039; festgelegt&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;$PS1&amp;lt;/code&amp;gt; bestimmt das Aussehen der Eingabeaufforderung (Prompt). Beispiel:&lt;br /&gt;
 root@archangel:~# echo $PS1&lt;br /&gt;
 \u@\h:\w$&lt;br /&gt;
*Die Zeichen &#039;&#039;\u&#039;&#039; stehen für Username&lt;br /&gt;
*Das &#039;&#039;@&#039;&#039; wird normal ausgegeben&lt;br /&gt;
*Die Zeichen &#039;&#039;\h&#039;&#039; werden mit dem Host-Namen ersetzt&lt;br /&gt;
*Es folgt ein Doppelpunkt&lt;br /&gt;
*Anschließend zeigt &#039;&#039;\w&#039;&#039; für  Working  Directory  das  aktuelle  Verzeichnis  an&lt;br /&gt;
*Die  Tilde &#039;&#039;~&#039;&#039; repräsentiert hierbei das Heimatverzeichnis des Benutzers&lt;br /&gt;
*Es folgt ein &#039;&#039;&amp;gt;&#039;&#039;&lt;br /&gt;
*Der Prompt kann durch  Änderung  der  Variablen &#039;&#039;PS1&#039;&#039; den  eigenen  Wünschen angepasst  werden&lt;br /&gt;
*Es empfiehlt sich dann eine Konfiguration in der Datei &#039;&#039;/etc/bashrc&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;$?&amp;lt;/code&amp;gt; enthält das Errorlevel des zuletzt ausgeführten Kommandos. In der Regel bedeutet der Wert 0 in dieser Variablen, dass das letzte Programm erfolgreich ausgeführt wurde. Die Fehlerwerte variieren von Programm zu Programm. Beliebte Werte sind 1 und 127. Beispiel:&lt;br /&gt;
 archangel:~ # Kommando, das es nicht gibt&lt;br /&gt;
 bash: Kommando: command not found&lt;br /&gt;
 archangel:~ # echo $?&lt;br /&gt;
 127&lt;br /&gt;
*Das »Kommando, das es nicht gibt« hat ein Errorlevel von 127 zur Folge&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;$1 , $2&amp;lt;/code&amp;gt; usw. enthalten die Optionen und Argumente, die an ein Programm übergeben werden. Sie werden im Normalfall vom gestarteten Programm oder Skript selbst ausgewertet&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Kontrollfragen=&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Welcher Befehl zeigt den vollständigen Pfad eines Kommandos an?&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;which&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Welche Variable definiert die Anzahl der Kommandos, die in der Befehls-History aufbewahrt werden?&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;$HISTSIZE&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Welches Kommando wird als Bang-Bang bezeichnet und führt den letzten Befehl der History noch einmal aus?&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;!!&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Mit welchem Befehl werden die Shellvariablen löscht?&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;unset&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Frage 5&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;Antwort&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Linux:LPIC:101]]&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=LPIC101/103.1_Auf_der_Kommandozeile_arbeiten&amp;diff=7379</id>
		<title>LPIC101/103.1 Auf der Kommandozeile arbeiten</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=LPIC101/103.1_Auf_der_Kommandozeile_arbeiten&amp;diff=7379"/>
		<updated>2019-12-10T12:34:25Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: /* Kontrollfragen */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Wichtigste Wissensgebiete=&lt;br /&gt;
*Einzelne Shell-Kommandos und einzeilige Kommandofolgen verwenden, um einfache Aufgaben auf der Kommandozeile zu lösen&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Die Shell-Umgebung verwenden und anpassen, etwa um Umgebungsvariablen zu definieren, zu verwenden und zu exportieren&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Die command-history verwenden und ändern&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kommandos innerhalb und außerhalb des definierten Suchpfads aufrufen&lt;br /&gt;
=Wichtiger Dateien, Verzeichnisse und Anwendungen=&lt;br /&gt;
&amp;lt;div style=&amp;quot;column-count:2;-moz-column-count:2;-webkit-column-count:2&amp;quot;&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: bash, echo, export, unset|bash]]&amp;lt;/code&amp;gt;       &lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: which, type#Linuxbefehl: type|type]]&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: bash, echo, export, unset|echo]]&amp;lt;/code&amp;gt;       &lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: which, type|which]]&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: env|env]]&amp;lt;/code&amp;gt;        &lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: man|man]]&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: bash, echo, export, unset|export]]&amp;lt;/code&amp;gt;     &lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: uname|uname]]&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;[[103.1 Auf der Kommandozeile arbeiten#PATH-Variable|pwd]]&amp;lt;/code&amp;gt;        &lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: set|set]]&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: bash, echo, export, unset|unset]]&amp;lt;/code&amp;gt;     &lt;br /&gt;
*&amp;lt;code&amp;gt;[[Bash-History|history]]&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;&#039;&#039;&#039;[[Bash-History|.bash_history]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;      &lt;br /&gt;
*&amp;lt;code&amp;gt;&#039;&#039;&#039;[[Quoting]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Allgemeines=&lt;br /&gt;
*Damit  man  im  Textmodus  mit  dem  Computer  kommunizieren  kann, benötigt man eine Shell. Man kann über diese Shell mit dem Kern(el) Informationen austauschen&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Unter Linux wird standardmäßig die Bash als Shell verwendet. Hierbei handelt es sich um eine Weiterentwicklung  der ursprünglichen  Unix-Shell &#039;&#039;sh&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Die Shell &#039;&#039;sh&#039;&#039; ist immer noch Bestandteil von Linux, wird aber zumindest als Login-Shell  nicht  mehr  so  oft  verwendet&lt;br /&gt;
==Aufbau eines Shell-Kommandos==&lt;br /&gt;
*Ein Kommando besteht aus bis zu drei verschiedenen Komponenten. Die erste Komponente  ist  das  Kommando  selbst,  also  eine ausführbare  Datei,  ein  Skript  oder  ein Shell-interner  Befehl&amp;lt;br&amp;gt;&lt;br /&gt;
*Ein  Kommando  kann  auch  für  sich  allein  stehen  und ohne Optionen oder Argumente funktionieren:&lt;br /&gt;
 archangel:~ # mount&lt;br /&gt;
*Wenn das Kommando &amp;lt;code&amp;gt;mount&amp;lt;/code&amp;gt; ohne Optionen oder Argumente ausgeführt wird, zeigt es aktuell eingehängte Dateisysteme an Es gibt aber auch Konstellationen, in denen ein Kommando mit einer oder mehreren Optionen ausgeführt wird:&lt;br /&gt;
 archangel:~ # mount -a&lt;br /&gt;
*In diesem Beispiel wurde &amp;lt;code&amp;gt;mount&amp;lt;/code&amp;gt; mit der Option &amp;lt;code&amp;gt;-a&amp;lt;/code&amp;gt;  ausgeführt.  Das  Programm  &amp;lt;code&amp;gt;mount&amp;lt;/code&amp;gt; würde mit dieser Option alle in der Datei &#039;&#039;/etc/fstab&#039;&#039; aufgeführten Dateisysteme einhängen&amp;lt;br&amp;gt;&lt;br /&gt;
*Es ist aber auch möglich, &amp;lt;code&amp;gt;mount&amp;lt;/code&amp;gt; ausschließlich mit Argumenten zu versehen:&lt;br /&gt;
 archangel:~ # mount /dev/sda1 /boot&lt;br /&gt;
*Argumente  unterscheiden  sich  von  Optionen.  Eine  Option  sagt  einem  Programm, wie es sich verhalten soll. Argumente teilen einem Programm mit, was es verarbeiten soll&amp;lt;br&amp;gt;&lt;br /&gt;
*Es  ist  möglich,  einem  Programm  sowohl  mehrere  Optionen  als  auch mehrere Argumente zu übergeben. Bei vielen Programmen ist die Reihenfolge sogar variabel:&lt;br /&gt;
 mount -o username=antje,password=xy //fs1/data /mnt/ -t smbfs&lt;br /&gt;
*Das Beispiel zeigt eine Mischung mit einer Option vorn, einer Option hinten und den Argumenten in der Mitte. Der &amp;lt;code&amp;gt;mount&amp;lt;/code&amp;gt;-Befehl baut in diesem Fall eine Netzwerkverbindung zu einem Windows-Computer auf&lt;br /&gt;
==Übergabe der Optionen==&lt;br /&gt;
*Bei der Übergabe von Optionen gibt es mehrere gängige Methoden&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Einige Kommandos verlangen, dass den Optionen ein Bindestrich vorangestellt wird, andere arbeiten auch ohne einleitenden Bindestrich&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Viele Programme sehen vor, dass ganze Wörter als Optionen verwendet werden. Diesen werden in der Regel zwei Bindestriche vorangestellt. Das folgende Beispiel kennen Sie sinngemäß schon aus dem vorangegangenen Kapitel:&lt;br /&gt;
 archangel:~ # rpm --install -vh /i586/fortune-1.0-860.i586.rpm&lt;br /&gt;
 Preparing.. ########################################### [100 %]&lt;br /&gt;
*Ein weiterer prominenter Vertreter der flexiblen Programme ist &amp;lt;code&amp;gt;tar&amp;lt;/code&amp;gt; . Man kann &amp;lt;code&amp;gt;tar&amp;lt;/code&amp;gt; mit normalen Optionen oder Optionswörtern verwenden. Außerdem kann &amp;lt;code&amp;gt;tar&amp;lt;/code&amp;gt; auch Optionen ohne vorangestellte Bindestriche übernehmen. Die folgenden vier Kommandos führen bei &amp;lt;code&amp;gt;tar&amp;lt;/code&amp;gt; zum selben Ergebnis:&lt;br /&gt;
 # tar -x -z -v -f xmbmon205.tar.gz&lt;br /&gt;
 # tar -xzvf xmbmon205.tar.gz&lt;br /&gt;
 # tar xvzf xmbmon205.tar.gz&lt;br /&gt;
 # tar --extract --gzip --verbose --file=xmbmon205.tar.gz&lt;br /&gt;
==Umgebungsvariablen und Shellvariablen==&lt;br /&gt;
*Die Unterschiede zwischen diesen beiden Variablentypen liegen einerseits drin.&lt;br /&gt;
*Durch welche Konfigurationsdateien sie deklariert werden&lt;br /&gt;
*Und demzufolge wann und durch welches Programm sie ausgewertet werden&lt;br /&gt;
*Und andererseits in ihrem Wirkungsbereich:&lt;br /&gt;
**&#039;&#039;&#039;Umgebungsvariablen:&#039;&#039;&#039;  &lt;br /&gt;
***Gelten  für  alle  Shells,  die  ein  Benutzer  verwendet&lt;br /&gt;
***Die Inhalte  dieser  Variablen  werden  an  Subshells  vererbt.  Das  bedeutet,  dass  beim Aufruf  einer  Subshell  ein  automatischer  Export  der  Variablen  in  diese Subshell stattfindet&lt;br /&gt;
***Bei   Umgebungsvariablen   werden   normalerweise   Großbuchstaben verwendet&lt;br /&gt;
**&#039;&#039;&#039;Shellvariablen:&#039;&#039;&#039;&lt;br /&gt;
***Müssen  in  jeder  Subshell, die  durch  den  Benutzer  oder  ein  Skript gestartet  wird,  neu  deklariert werden&lt;br /&gt;
***Es findet  standardmäßig  keine  Vererbung statt&amp;lt;br&amp;gt;&lt;br /&gt;
***Für Shellvariablen verwendet man üblicherweise Kleinbuchstaben&lt;br /&gt;
&lt;br /&gt;
==PATH-Variable==&lt;br /&gt;
*Wenn  man  ein  Programm  ausführen  will,  das  sich  nicht  in  einem  in  Ihrer  PATH-Variablen enthaltenen Verzeichnis befindet, muss man den kompletten Pfad zu diesem Programm auf der Kommandozeile mit angeben&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Wenn man ein Programm ohne Angabe eines Pfades startet, prüft die Shell zunächst, ob es sich um ein internes Kommando  der  Shell  handelt.  Dazu  zählen:  &amp;lt;code&amp;gt;echo, bg, fg,jobs, kill, pwd, set, unset&amp;lt;/code&amp;gt; und viele mehr&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Falls  kein  passendes  Kommando  gefunden wird,  sucht  die  Shell  das  Programm  inallen Verzeichnissen, die in der PATH-Variablen enthalten sind&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Sollten mehrere Programme mit dem gleichen Namen vorhanden sein, wird das zuerst gefundene ausgeführt.  Man kann in  einem  solchen  Fall  das  Kommando  &amp;lt;code&amp;gt;which&amp;lt;/code&amp;gt; verwenden,  um festzustellen, welches Programm die Shell automatisch ausführt:&lt;br /&gt;
 archangel:~ # which less&lt;br /&gt;
 /usr/bin/less&lt;br /&gt;
*Es ist zu beachten, dass ein Programm auch dann nicht ohne Pfadangabe ausgeführt wird, wenn man sich aktuell in dessen Verzeichnis befindet. Dieses Verhalten gibt esunter DOS, aber nicht bei Linux&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Man kann ein Programm, das sich im aktuellen Verzeichnis  befindet,  aber  auch  starten,  indem  Sie  &#039;&#039;./&#039;&#039;  dem  Programm voranstellen.  Die Zeichen &#039;&#039;./&#039;&#039; repräsentieren  das  aktuelle  Verzeichnis.  Sie  können  z. B.  Konfigurationsskripte  von  Tar-Balls  im  aktuellen  Verzeichnis  ausführen,  indem  Sie  folgende Syntax verwenden:&lt;br /&gt;
 archangel:/usr/src/xmbmon205 # ./configure&lt;br /&gt;
*Wenn man einen Prompt verwendet, der ihn nicht anzeigt, in welchem Verzeichnis man sich gerade befindet, verwendet man das Kommando &amp;lt;code&amp;gt;pwd&amp;lt;/code&amp;gt; &#039;&#039;(Path of Working Directory)&#039;&#039; ohne Optionen. Der Pfad wird Ihnen dann angezeigt:&lt;br /&gt;
 archangel:/usr/src/xmbmon205 # pwd&lt;br /&gt;
 /usr/src/xmbmon205&lt;br /&gt;
*Man kann sich den Inhalt Ihrer PATH-Variablen, genau wie den anderer Variablen, anzeigen lassen:&lt;br /&gt;
 archangel:/ # echo $PATH&lt;br /&gt;
 /sbin:/usr/sbin:/usr/local/sbin:/root/bin:/usr/local/bin:/usr/bin:/usr/X11R6/&lt;br /&gt;
 bin:/bin:/usr/games:/opt/gnome/bin:/opt/kde3/bin:/usr/lib/jvm/jre/bin&lt;br /&gt;
==Beliebte Variablen für Prüfungen==&lt;br /&gt;
Manche  Variablen  werden  in  der  Prüfung  immer  wieder  abgefragt.  Dazu  gehören besonders die folgenden:&lt;br /&gt;
*&amp;lt;code&amp;gt;$HISTSIZE&amp;lt;/code&amp;gt; definiert die Anzahl der Kommandos, die in der Befehls-History aufbewahrt werden. Diese Variable wird normalerweise in der Datei &#039;&#039;/etc/profile&#039;&#039; festgelegt&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;$PS1&amp;lt;/code&amp;gt; bestimmt das Aussehen der Eingabeaufforderung (Prompt). Beispiel:&lt;br /&gt;
 root@archangel:~# echo $PS1&lt;br /&gt;
 \u@\h:\w$&lt;br /&gt;
*Die Zeichen &#039;&#039;\u&#039;&#039; stehen für Username&lt;br /&gt;
*Das &#039;&#039;@&#039;&#039; wird normal ausgegeben&lt;br /&gt;
*Die Zeichen &#039;&#039;\h&#039;&#039; werden mit dem Host-Namen ersetzt&lt;br /&gt;
*Es folgt ein Doppelpunkt&lt;br /&gt;
*Anschließend zeigt &#039;&#039;\w&#039;&#039; für  Working  Directory  das  aktuelle  Verzeichnis  an&lt;br /&gt;
*Die  Tilde &#039;&#039;~&#039;&#039; repräsentiert hierbei das Heimatverzeichnis des Benutzers&lt;br /&gt;
*Es folgt ein &#039;&#039;&amp;gt;&#039;&#039;&lt;br /&gt;
*Der Prompt kann durch  Änderung  der  Variablen &#039;&#039;PS1&#039;&#039; den  eigenen  Wünschen angepasst  werden&lt;br /&gt;
*Es empfiehlt sich dann eine Konfiguration in der Datei &#039;&#039;/etc/bashrc&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;$?&amp;lt;/code&amp;gt; enthält das Errorlevel des zuletzt ausgeführten Kommandos. In der Regel bedeutet der Wert 0 in dieser Variablen, dass das letzte Programm erfolgreich ausgeführt wurde. Die Fehlerwerte variieren von Programm zu Programm. Beliebte Werte sind 1 und 127. Beispiel:&lt;br /&gt;
 archangel:~ # Kommando, das es nicht gibt&lt;br /&gt;
 bash: Kommando: command not found&lt;br /&gt;
 archangel:~ # echo $?&lt;br /&gt;
 127&lt;br /&gt;
*Das »Kommando, das es nicht gibt« hat ein Errorlevel von 127 zur Folge&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;$1 , $2&amp;lt;/code&amp;gt; usw. enthalten die Optionen und Argumente, die an ein Programm übergeben werden. Sie werden im Normalfall vom gestarteten Programm oder Skript selbst ausgewertet&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Kontrollfragen=&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Welcher Befehl zeigt den vollständigen Pfad eines Kommandos an?&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;which&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Welche Variable definiert die Anzahl der Kommandos, die in der Befehls-History aufbewahrt werden?&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;$HISTSIZE&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Welches Kommando wird als Bang-Bang bezeichnet und führt den letzten Befehl der History noch einmal aus?&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;!!&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Frage 4&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;Antwort&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Frage 5&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;Antwort&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Linux:LPIC:101]]&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=Diskussion:LPIC/Simulator/Fragen_einreichen&amp;diff=7349</id>
		<title>Diskussion:LPIC/Simulator/Fragen einreichen</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=Diskussion:LPIC/Simulator/Fragen_einreichen&amp;diff=7349"/>
		<updated>2019-12-09T18:42:20Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: Die Seite wurde neu angelegt: „&amp;#039;&amp;#039;&amp;#039;Tippen um die Seite besser auszusehen:&amp;#039;&amp;#039;&amp;#039; *Nimmst Du alle Leerzeichen zwischen die Sätze weg und um einen neuen Satz anzufangen nutzt du &amp;lt;nowiki&amp;gt;&amp;lt;br&amp;gt;&amp;lt;/nowi…“&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Tippen um die Seite besser auszusehen:&#039;&#039;&#039;&lt;br /&gt;
*Nimmst Du alle Leerzeichen zwischen die Sätze weg und um einen neuen Satz anzufangen nutzt du &amp;lt;nowiki&amp;gt;&amp;lt;br&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
*Wenn Du einen Code schreiben willst, machst Du einfach nur ein Leerzeichen vor dem Satz, daher brauchst du nicht &amp;lt;nowiki&amp;gt;&amp;lt;code&amp;gt;&amp;lt;/nowiki&amp;gt; am Anfang und &amp;lt;nowiki&amp;gt;&amp;lt;/code&amp;gt;&amp;lt;/nowiki&amp;gt; am Ende zu schreiben:&lt;br /&gt;
 Das ist ein bei spiel&lt;br /&gt;
*Soll ein Befehl oder eine Datei als Code in einem normalen Text dargestellt werden, da nutzt Du &amp;lt;nowiki&amp;gt;&amp;lt;code&amp;gt;Text&amp;lt;/code&amp;gt;&amp;lt;/nowiki&amp;gt; dann wurde so &amp;lt;code&amp;gt;Text&amp;lt;/code&amp;gt; gezeigt&lt;br /&gt;
*Ein Beispiele einer Tabelle zu erstellen:&lt;br /&gt;
&#039;&#039;&#039;Code:&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;{| class=&amp;quot;wikitable&amp;quot;&amp;lt;/nowiki&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;nowiki&amp;gt;|-&amp;lt;/nowiki&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;nowiki&amp;gt;! Überschrift !! Überschrift !! Überschrift&amp;lt;/nowiki&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;nowiki&amp;gt;|-&amp;lt;/nowiki&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;nowiki&amp;gt;| Beispiel || Beispiel || Beispiel&amp;lt;/nowiki&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;nowiki&amp;gt;|-&amp;lt;/nowiki&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;nowiki&amp;gt;| Beispiel || Beispiel || Beispiel&amp;lt;/nowiki&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;nowiki&amp;gt;|}&amp;lt;/nowiki&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;gezeigt:&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Überschrift !! Überschrift !! Überschrift&lt;br /&gt;
|-&lt;br /&gt;
| Beispiel || Beispiel || Beispiel&lt;br /&gt;
|-&lt;br /&gt;
| Beispiel || Beispiel || Beispiel&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=Declare&amp;diff=7236</id>
		<title>Declare</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=Declare&amp;diff=7236"/>
		<updated>2019-12-05T11:42:55Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;code&amp;gt;&#039;&#039;&#039;declare:&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
setzt Variablenwerte und deren Attribute.&lt;br /&gt;
Deklariert Variablen und weist ihnen Attribute zu. Wenn keine Namen angegeben sind, werden die Attribute und Werte aller Variablen ausgegeben.  &lt;br /&gt;
 &lt;br /&gt;
&#039;&#039;&#039;Optionen:&#039;&#039;&#039;&lt;br /&gt;
 -f        Schränkt Aktionen oder Anzeigen auf Funktionsnamen und Definitionen ein.&lt;br /&gt;
 -F        Zeigt nur Funktionsnamen an (inklusive Zeilennummer und Quelldatei beim Debuggen).&lt;br /&gt;
 -g        Deklariert globale Varieblen innerhalb einer Shellfunktion; wird ansonsten ignoriert.&lt;br /&gt;
 -p        Zeigt die Attribute und Werte jeder angegebenenVariable an.&lt;br /&gt;
&#039;&#039;&#039;Attribute setzen:&#039;&#039;&#039;&lt;br /&gt;
 -a        Deklariert ein indiziertes Feld (wenn unterstützt).&lt;br /&gt;
 -A        Deklariert ein assoziatives Feld (wenn unterstützt).&lt;br /&gt;
 -i        Deklariert eine Integer Variable.&lt;br /&gt;
 -l        Konvertiert die Variabennmamen in Kleinbuchstaben.&lt;br /&gt;
 -n        Der Name wird als Variable interpretiert. &lt;br /&gt;
 -r        Deklariert nur lesbare Variablen.&lt;br /&gt;
 -t        Weist das »trace« Attibut zu.&lt;br /&gt;
 -u        Konvertiert die Variablennamen in Großbuchstaben.&lt;br /&gt;
 -x        Exportiert die Variablen über die aktuelle Shellumgebung hinaus.  &lt;br /&gt;
*Das Voranstellen von »+« anstelle von »-« schaltet die gegebenen Attribute ab.&lt;br /&gt;
*Für Integer Variablen werden bei der Zuweisung arithmetische Berechnungen durchgeführt (siehe `help let&#039;).&lt;br /&gt;
*Innerhalb einer Funktion werden lokale Variablen erzeugt. Die Option »-g« unterdrückt dieses Verhalten.&lt;br /&gt;
    &lt;br /&gt;
&#039;&#039;&#039;Rückgabewert:&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
*Gibt »Erfolg« zurück, außer eine ungültige Option wurde angegeben, oder ein Fehler trat auf.&lt;br /&gt;
&lt;br /&gt;
[[Category:Linuxbefehle]]&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Linux:LPIC:101]]&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=LPIC102/108.1_Systemzeit&amp;diff=7223</id>
		<title>LPIC102/108.1 Systemzeit</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=LPIC102/108.1_Systemzeit&amp;diff=7223"/>
		<updated>2019-12-04T20:18:40Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Datei:Giphy-edited.gif|800px|thumb]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
==&amp;lt;big&amp;gt;Wichtigste Wissensgebiete:&amp;lt;/big&amp;gt;==&lt;br /&gt;
# Systemzeit und -datum setzen&lt;br /&gt;
# die Hardwareuhr auf die korrekte Zeit in UTC setzen&lt;br /&gt;
# die korrekte Zeitzone einstellen&lt;br /&gt;
# grundlegende &#039;&#039;NTP-Konfiguration&#039;&#039; unter Verwendung von &#039;&#039;ntpd&#039;&#039; und &#039;&#039;chrony&#039;&#039;&lt;br /&gt;
# Wissen über den Gebrauch von &#039;&#039;pool.ntp.org&#039;&#039;&lt;br /&gt;
# Kenntnis des &#039;&#039;ntpq-Kommandos&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;Liste wichtiger Dateien, Verzeichnisse und Anwendungen:&amp;lt;/big&amp;gt;&lt;br /&gt;
* /usr/share/zoneinfo&lt;br /&gt;
* /etc/timezone&lt;br /&gt;
* /etc/localtime&lt;br /&gt;
* /etc/ntp.conf&lt;br /&gt;
* /etc/chrony.conf&lt;br /&gt;
* date&lt;br /&gt;
* hwclock&lt;br /&gt;
* timedatectl&lt;br /&gt;
* ntpd&lt;br /&gt;
* ntpdate&lt;br /&gt;
* chronyc&lt;br /&gt;
* pool.ntp.org&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==&amp;lt;big&amp;gt;Manuelle Konfiguration der Systemzeit&amp;lt;/big&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
Die manuelle Konfiguration der Systemzeit erfolgt über das Kommando &#039;&#039;date&#039;&#039;. Wenn&lt;br /&gt;
Sie &#039;&#039;date&#039;&#039; ohne Parameter starten, werden das aktuelle Datum und die Uhrzeit ausgegeben.&lt;br /&gt;
&lt;br /&gt;
 &#039;&#039;archangel:~ # date&#039;&#039;&lt;br /&gt;
 &#039;&#039;Di 24. Apr 17:54:52 CEST 2018&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;die Uhrzeit&#039;&#039; mittels &#039;&#039;date&#039;&#039; ändern:&lt;br /&gt;
&lt;br /&gt;
 &#039;&#039;archangel:~ # date -s 1755&#039;&#039;&lt;br /&gt;
 &#039;&#039;Di 24. Apr 17:55:00 CEST 2018&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Die Uhr wurde nun erfolgreich auf 17.55 Uhr eingestellt. &lt;br /&gt;
&lt;br /&gt;
Für bessere Darstellungen kann man &#039;&#039;date +&#039;&#039; verwenden&lt;br /&gt;
&lt;br /&gt;
Das sieht z. B. so aus:&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039; # date &amp;quot;+Heute ist der %d.%m.%Y. Das ist der %j. Tag des Jahres.&amp;quot;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039; Heute ist der 24.04.2018. Das ist der 118. Tag des Jahres.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Mit dem Befehl &#039;&#039;date --help&#039;&#039; werden dir weitere Variablen anzeigt.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==&amp;lt;big&amp;gt;Die RTC-Uhr einstellen&amp;lt;/big&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
Eine Echtzeituhr (englisch real-time clock, RTC) oder physikalische Uhr ist eine Uhr, welche die physikalische Zeit misst. Mit dem Kommando &#039;&#039;hwclock&#039;&#039; können Sie die Systemzeit in die Hardwareuhr schreiben oder umgekehrt. Folgendes Kommando schreibt die Systemzeit in die Echtzeituhr:&lt;br /&gt;
&lt;br /&gt;
 &#039;&#039;archangel:~ # hwclock --systohc&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Umgekehrt holt folgender Befehl die Zeit bei der RTC ab und stellt danach die Systemzeit ein:&lt;br /&gt;
&lt;br /&gt;
 &#039;&#039;archangel:~ # hwclock --hctosys&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Die Differenz ziwschen Hardwareuhr und der Systemzeit lässt sich mit &#039;&#039;hwclock&#039;&#039; ermitteln, indem Sie folgendes Kommando verwenden: &lt;br /&gt;
&lt;br /&gt;
 &#039;&#039;archangel:~ # hwclock --show&#039;&#039;&lt;br /&gt;
 &#039;&#039;Di 24 Apr 2018 17:58:13 CEST -0.020712 Sekunden&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==&amp;lt;big&amp;gt;Zeitzonen&amp;lt;/big&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
Damit die Lokaluhrzeit den Benutzer angezeigt wird, muss die BIOS-Uhr (RTC) auf UTC eingestellt werden.&lt;br /&gt;
Wichtige Konfigurationsdateien:&lt;br /&gt;
* &#039;&#039;/usr/share/zoneinfo&#039;&#039; – in diesem &#039;&#039;Verzeichnis&#039;&#039; befinden sich Binärdateien, die mit allen existierenden Zeitzonen korrespondieren.&lt;br /&gt;
* &#039;&#039;/etc/localtime&#039;&#039; – diese Datei ist die mit der aktuellen Zeitzone übereinstimmende&lt;br /&gt;
* Binärdatei aus &#039;&#039;/usr/share/zoneinfo&#039;&#039;. Es kann sich hier um eine Kopie oder einen &#039;&#039;Softlink&#039;&#039; zur Originaldatei handeln.&lt;br /&gt;
* &#039;&#039;/etc/timezone&#039;&#039; ist eine textbasierte Konfigurationsdatei. Sie können die richtige Zeitzone in dieser Datei einfach eintragen.&lt;br /&gt;
&lt;br /&gt;
Um einen Überblick über die verfügbaren Zeitzonen zu bekommen, können Sie &#039;&#039;tzselect&#039;&#039; verwenden.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==&amp;lt;big&amp;gt;timedatectl&amp;lt;/big&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
Der Befehl &#039;timedatectl&#039;&#039; kombiniert und erweitert die Funktionalität der Befehle &#039;&#039;date&#039;&#039; und &#039;&#039;hwclock&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Die Verwendung von &#039;&#039;timedatectl&#039;&#039; ohne Optionen gibt Ihnen eine Menge hilfreicher Informationen:&lt;br /&gt;
&lt;br /&gt;
 &#039;&#039;[root@scientific ~]# timedatectl&#039;&#039;&lt;br /&gt;
 &#039;&#039;Local time:       Sa 2018-04-21 13:49:47 CEST&lt;br /&gt;
 &#039;&#039;Universal time:   Sa 2018-04-21 11:49:47 UTC&lt;br /&gt;
 &#039;&#039;RTC time:         Sa 2018-04-21 11:49:47&lt;br /&gt;
 &#039;&#039;Time zone:        Europe/Berlin (CEST, +0200)&lt;br /&gt;
 &#039;&#039;NTP enabled:      no&lt;br /&gt;
 &#039;&#039;NTP synchronized: no&lt;br /&gt;
 &#039;&#039;RTC in local TZ:  no&lt;br /&gt;
 &#039;&#039;DST active:       yes&lt;br /&gt;
 &#039;&#039;Last DST change:  DST began at&lt;br /&gt;
 &#039;&#039;                  So 2018-03-25 01:59:59 CET&lt;br /&gt;
 &#039;&#039;                  So 2018-03-25 03:00:00 CEST&lt;br /&gt;
 &#039;&#039;Next DST change:  DST ends (the clock jumps one hour backwards) at&lt;br /&gt;
 &#039;&#039;                  So 2018-10-28 02:59:59 CEST&lt;br /&gt;
 &#039;&#039;                  So 2018-10-28 02:00:00 CET&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;timedatectl&#039;&#039; unterstützt auch die Ansteuerung von Remotemaschinen und lokalen&lt;br /&gt;
Containern. Die manuelle Zeiteinstellung einer Remotemaschine geschieht mit dem&lt;br /&gt;
Kommando:&lt;br /&gt;
&lt;br /&gt;
 &#039;&#039;[root@scientific ~]# timedatectl set-time &amp;quot;2018-03-24 14:24:16&amp;quot; -H archangel&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==&amp;lt;big&amp;gt;Zeitsynchronisation über das Netzwerk&amp;lt;/big&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
Für die Zeitsynchronisation über das Netzwerk kommt das &#039;&#039;Network Time Protocol&#039;&#039; (NTP) zum Einsatz&lt;br /&gt;
&lt;br /&gt;
Es folgt ein Beispiel mit einem Zugriff auf einen Server:&lt;br /&gt;
&lt;br /&gt;
 &#039;&#039;root@archangel:~# ntpdate pool.ntp.org&#039;&#039;&lt;br /&gt;
 &#039;&#039;24 Apr 18:03:14 ntpdate[30836]: adjust time server 131.234.137.24&#039;&#039;&lt;br /&gt;
 &#039;&#039;offset -0.000341 sec&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Mit &#039;&#039;ntpdate&#039;&#039; können Zeitserver die&lt;br /&gt;
Uhrzeit des Systems aktualisieren. Es wird jedoch empfohlen, während der Synchronisation mehrere Server gleichzeitig zu konsultieren, damit die Richtigkeit der übertragenen Zeit überprüft werden kann.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==&amp;lt;big&amp;gt;Zeitsynchronisation mit ntpd&amp;lt;/big&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
Wenn Sie &#039;&#039;ntpdate&#039;&#039; regelmäßig von &#039;&#039;cron&#039;&#039; ausführen lassen, wird Systemzeit automatisch synchronisiert. Komfortabler und genauer funktioniert dies allerdings mit dem Daemon &#039;&#039;ntpd&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Die Hauptkonfigurationsdatei für den &#039;&#039;ntpd&#039;&#039; ist &#039;&#039;/etc/ntp.conf&#039;&#039;. Hier findet der Daemon vor allem die Adressen mit den zur Aktualisierung vorgesehenen Servern und einen Verweis auf den Driftfile. Diese liegt, unter &#039;&#039;/etc/ntp.drift&#039;&#039;. Der tatsächliche Speicherort hängt von der verwendeten Distribution ab. Die Mindestausstattung der &#039;&#039;ntp.conf&#039;&#039; könnte etwa so aussehen:&lt;br /&gt;
&lt;br /&gt;
 &#039;&#039;server de.pool.ntp.org&#039;&#039;&lt;br /&gt;
 &#039;&#039;server ptbtime1.ptb.de&#039;&#039;&lt;br /&gt;
 &#039;&#039;driftfile /var/lib/ntp/drift/ntp.drift&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Mit diesen Einträgen ist der Server schon lauffähig. So Starten Sie den Server &#039;&#039;/etc/init.d/ntpd start&#039;&#039;. Nachdem Start wird der Server sofort eine erste Synchronisation durchführen. In Abhängigkeit von der verwendeten Distribution wurde &#039;&#039;ntpd&#039;&#039; bereits durch &#039;&#039;xntpd&#039;&#039; ersetzt. Die Konfigurationsdateien sind jedoch identisch.&lt;br /&gt;
&lt;br /&gt;
Die Driftdatei wird von &#039;&#039;ntpd&#039;&#039; verwendet, um Ungenauigkeiten &#039;&#039;der Systemuhr&#039;&#039; festzuhalten. Die Abweichung von der tatsächlichen Zeit wird auf eine millionstel Sekunde ermittelt und in die Driftdatei geschrieben.&lt;br /&gt;
&lt;br /&gt;
Sie können den Daemon &#039;&#039;ntpd&#039;&#039; mithilfe des Programms &#039;&#039;ntpq&#039;&#039; abfragen. Wenn Sie wissen wollen, welche Server Ihr &#039;&#039;ntpd&#039;&#039; kontaktiert, können Sie z. B. dieses Kommando verwenden:&lt;br /&gt;
&lt;br /&gt;
 &#039;&#039;root@archangel:~# ntpq -p&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
 &#039;&#039;remote          refid   st t when poll reach delay offset jitter&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
 ===================================================================&amp;lt;br&amp;gt;&lt;br /&gt;
 &#039;&#039;arcturos.gr     213.239.239.166 3 u 4 64 1 27.057 -1.371  0.000&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
 &#039;&#039;pyxis.my-rz.de  212.82.32.15    2 u 3 64 1 23.226  1.645  0.000&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
 &#039;&#039;bytesink.de     131.188.3.223   2 u 2 64 1 32.562  3.667  0.000&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
 &#039;&#039;ntp1.wtnet.de   10.129.40.211   2 u 1 64 1 29.028  1.428  0.000&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
 &#039;&#039;golem.canonical 192.93.2.20     2 u - 64 1 32.256  0.875  0.000&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Es gibt mehrere Bordwerkzeuge, um den &#039;&#039;ntpd&#039;&#039; oder auch &#039;&#039;xntpd&#039;&#039; zu untersuchen. Die&lt;br /&gt;
beiden wichtigsten sind wohl &#039;&#039;ntpq&#039;&#039; und &#039;&#039;ntpdc&#039;&#039;. Beide Programme unterstützen einen&lt;br /&gt;
interaktiven Modus, der nach Eingabe eines Fragezeichens Aufschluss über die Möglichkeiten der beiden Programme liefert. &lt;br /&gt;
&lt;br /&gt;
Das Beispiel zeigt eine Abfrage nach &#039;&#039;sysinfo&#039;&#039; mit&#039;&#039; ntpdc&#039;&#039; im interaktiven Modus:&lt;br /&gt;
&lt;br /&gt;
 &#039;&#039;archangel:/ # ntpdc&#039;&#039;&lt;br /&gt;
 &#039;&#039;ntpdc&amp;gt; sysinfo&#039;&#039;         &lt;br /&gt;
 &#039;&#039;system peer:        ptbtime1.ptb.de&#039;&#039;&lt;br /&gt;
 &#039;&#039;system peer mode:   client&#039;&#039;&lt;br /&gt;
 &#039;&#039;leap indicator:     00&#039;&#039;&lt;br /&gt;
 &#039;&#039;stratum:            2&#039;&#039;&lt;br /&gt;
 &#039;&#039;precision:          -18&#039;&#039;&lt;br /&gt;
 &#039;&#039;root distance:      0.02992 s&#039;&#039;&lt;br /&gt;
 &#039;&#039;root dispersion:    0.02531 s&#039;&#039;&lt;br /&gt;
 &#039;&#039;reference ID:       [192.53.103.108]&#039;&#039;&lt;br /&gt;
 &#039;&#039;reference time:     de60cef4.ac5938de Sat, Mar 24 2018 14:19:48.673&#039;&#039;&lt;br /&gt;
 &#039;&#039;system flags:       auth monitor ntp kernel stats&#039;&#039;&lt;br /&gt;
 &#039;&#039;jitter:             0.004898 s&#039;&#039;&lt;br /&gt;
 &#039;&#039;stability:          236.358 ppm&#039;&#039;&lt;br /&gt;
 &#039;&#039;broadcastdelay:     0.003998 s&#039;&#039;&lt;br /&gt;
 &#039;&#039;authdelay:          0.000000 s&#039;&#039;&lt;br /&gt;
 &#039;&#039;ntpdc&amp;gt;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Die beiden Diagnoseprogramme peers und monlist geben große Informationsmengen aus. Eine weitere Implementierung des NTP ist chrony. Dieser Daemon eignet sich besonders für virtuelle Maschinen oder Systeme, die nicht dauerhaft laufen. Die Einstellung der RTC ist integriert und muss daher nicht vorgenommen werden. Die Zeitsynchronisation ist schneller und genauer als bei ntpd.&lt;br /&gt;
&lt;br /&gt;
Nach der Installation von chrony durch das Paketmanagement haben Sie den Daemon chronyd, der über die Konfigurationsdatei chrony.conf konfiguriert wird und das Kommandozeilenwerkzeug chronyc. In der Datei /etc/chrony /chrony.conf können ähnliche Parameter festgelegt werden, wie in der Datei ntpd.conf. Wenn Sie chrony nicht nur als Client verwenden wollen, müssen Sie über ein allow-Statement den Zugriff erlauben. &lt;br /&gt;
&lt;br /&gt;
In der Standardeinstellung fungiert chrony nicht als Server. Sie müssen den Zugriff auf den Zeitserver aus bestimmten Netzen erlauben. Um den Zugriff aus allen privaten C-Klasse-Netzen zu erlauben, können Sie einen solchen Eintrag erstellen: &lt;br /&gt;
&lt;br /&gt;
Nach der Installation von &#039;&#039;chrony&#039;&#039; durch das Paketmanagement haben Sie den Daemon &#039;&#039;chronyd&#039;&#039;, der über die Konfigurationsdatei &#039;&#039;chrony.conf&#039;&#039; konfiguriert wird und das Kommandozeilenwerkzeug &#039;&#039;chronyc&#039;&#039;. In der Datei &#039;&#039;/etc/chrony&#039;&#039; &#039;&#039;/chrony.conf&#039;&#039; können ähnliche Parameter festgelegt werden, wie in der Datei &#039;&#039;ntpd.conf.&#039;&#039; Wenn Sie &#039;&#039;chrony&#039;&#039; nicht nur als Client verwenden wollen, müssen Sie über ein allow-Statement den Zugriff erlauben. In der Standardeinstellung fungiert &#039;&#039;chrony&#039;&#039; nicht als Server. Sie müssen den Zugriff auf den Zeitserver aus bestimmten Netzen erlauben. Um den Zugriff aus allen privaten C-Klasse-Netzen zu erlauben, können Sie einen solchen Eintrag erstellen:&lt;br /&gt;
&lt;br /&gt;
 allow 192.168/16&lt;br /&gt;
Wenn der Zugriff von überall her erlaubt werden soll, reicht ein Eintrag wie dieser:&lt;br /&gt;
 allow 0/0&lt;br /&gt;
Das Kommandozeilenwerkzeug &#039;&#039;chronyc&#039;&#039; kann direkt als Kommandozeile oder interaktiv verwendet werden. &lt;br /&gt;
&lt;br /&gt;
Hier ein interaktives Beispiel:&lt;br /&gt;
&lt;br /&gt;
 root@uvm1:~# chronyc&lt;br /&gt;
 chronyc&amp;gt; sources -v&lt;br /&gt;
 210 Number of sources = 4 &lt;br /&gt;
   .-- Source mode &#039;^&#039; = server, &#039;=&#039; = peer, &#039;#&#039; = local clock.&lt;br /&gt;
   / .- Source state &#039;*&#039; = current synced, &#039;+&#039; = combined , &#039;-&#039; = not combined,&lt;br /&gt;
    | / &#039;?&#039; = unreachable, &#039;x&#039; = time may be in error, &#039;~&#039; = time too variable.&lt;br /&gt;
 ||                                                  .- xxxx [ yyyy ] +/- zzzz&lt;br /&gt;
 ||       Reachability register (octal) -.           | xxxx = adjusted offset,&lt;br /&gt;
 ||       Log2(Polling interval) --.      |          | yyyy = measured offset,&lt;br /&gt;
 ||                                 \     |          | zzzz = estimated error.&lt;br /&gt;
 ||                                  |    |           \&lt;br /&gt;
 MS Name/IP address          Stratum Poll Reach LastRx Last sample&lt;br /&gt;
 ===========================================================================&lt;br /&gt;
 ^- b.fu110.de                   3  6   377   36  +5041us[+5041us] +/-  92ms&lt;br /&gt;
 ^+ public-dns-a.primawebtool    2  6   377   37  +1762us[+1889us] +/-  47ms&lt;br /&gt;
 ^+ scrollout.family-adam.de     2  6   377   35  -3393us[-3393us] +/-  36ms&lt;br /&gt;
 ^* stratum2-3.NTP.TechFak.Un    2  6   377   37  +710us[ +837us]  +/-  17ms&lt;br /&gt;
&lt;br /&gt;
==&amp;lt;big&amp;gt;Qullenangaben[&amp;lt;/big&amp;gt;==&lt;br /&gt;
#&lt;br /&gt;
#&lt;br /&gt;
#&lt;br /&gt;
#&lt;br /&gt;
#&lt;br /&gt;
#&lt;br /&gt;
#&lt;br /&gt;
#&lt;br /&gt;
#&lt;br /&gt;
 &lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:LPIC102]]&lt;br /&gt;
&lt;br /&gt;
[[Benutzer:Fabienmann|Fabienmann]] ([[Benutzer Diskussion:Fabienmann|Diskussion]]) 14:12, 17. Juli 2019 (CEST)&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=LPIC101/103.7_Regul%C3%A4ren_Ausdr%C3%BCcke&amp;diff=7222</id>
		<title>LPIC101/103.7 Regulären Ausdrücke</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=LPIC101/103.7_Regul%C3%A4ren_Ausdr%C3%BCcke&amp;diff=7222"/>
		<updated>2019-12-04T20:17:16Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Wichtung : 3&lt;br /&gt;
&lt;br /&gt;
==Begriffsklärung==&lt;br /&gt;
&lt;br /&gt;
*Reguläre Ausdrücke erleichtern das durchsuchen von Texten&lt;br /&gt;
*Reguläre Ausdrücke werden in englisch Regular Expressions genannt &lt;br /&gt;
*Reguläre Ausdrücke werden meist mit RegEx oder RegExp abgekürzt&lt;br /&gt;
&lt;br /&gt;
Wo kann man reguläre Ausdrücke verwenden&lt;br /&gt;
*In der Shell&lt;br /&gt;
*Im Kate Editor (Option {} aktivieren im Suchen Fenster)&lt;br /&gt;
*In vielen weiteren Programmen (z.B. Excel)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Gültige Metazeichen== &lt;br /&gt;
* &amp;lt;code&amp;gt;^&amp;lt;/code&amp;gt; Textanker für Zeilenanfang&lt;br /&gt;
* &amp;lt;code&amp;gt;$&amp;lt;/code&amp;gt; Textanker für Zeilenende&lt;br /&gt;
* &amp;lt;code&amp;gt;\&amp;lt;&amp;lt;/code&amp;gt; markiert einen Wortanfang&lt;br /&gt;
* &amp;lt;code&amp;gt;\&amp;gt;&amp;lt;/code&amp;gt; markiert ein Wortende&lt;br /&gt;
* &amp;lt;code&amp;gt;\&amp;lt;/code&amp;gt; schützt ein Zeichen vor der Interpretation (z.B. /$ sucht nach Dollarzeichen und nimmt diesen seine Spezialbedeutung)&lt;br /&gt;
* &amp;lt;code&amp;gt;[]&amp;lt;/code&amp;gt; sucht nach einem Zeichen oder einer Zeichenfolge innerhalb des eckig geklammerten Bereichs (z.B. [a-g] )&lt;br /&gt;
* &amp;lt;code&amp;gt;[^Zeichen]&amp;lt;/code&amp;gt; Schließt das Zeichen nach dem Circonflex aus der Suche aus &lt;br /&gt;
&lt;br /&gt;
==Wildcards (Joker)==&lt;br /&gt;
* &amp;lt;code&amp;gt;*&amp;lt;/code&amp;gt; bezeichnet keine oder beliebig viele Wiederholungen des vorangegangenen Zeichens&lt;br /&gt;
* &amp;lt;code&amp;gt;?&amp;lt;/code&amp;gt; bezeichnet keine oder eine Wiederholung des vorangegangenen Zeichens&lt;br /&gt;
* &amp;lt;code&amp;gt;+&amp;lt;/code&amp;gt; bezeichnet, dass das voranstehende Zeichen mindestens einmal vorkommt&lt;br /&gt;
* &amp;lt;code&amp;gt;.&amp;lt;/code&amp;gt; wird als Platzhalter für ein beliebiges Zeichen verwendet&lt;br /&gt;
&lt;br /&gt;
S.152 - verwendung von grep&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
==Kontrollfragen==&lt;br /&gt;
Wonach sucht RegEx &amp;lt;code&amp;gt;^[^#]&amp;lt;/code&amp;gt;&lt;br /&gt;
Antwort : Nach einem Zeilenanfang ohne Raute&lt;br /&gt;
&lt;br /&gt;
Sie geben in der Shell ls a* ein. Was erhalten Sie als Antwort?&lt;br /&gt;
Antwort : Alle Dateien im aktuellen Verzeichnis, welche mit a anfangen.&lt;br /&gt;
&lt;br /&gt;
Sie geben in der Kate-Suche mit regulären Ausdrücken a* ein, was erhalten Sie als Antwort?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Linux:LPIC:101]]&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=LPIC102/110.2_Einen_Rechner_absichern&amp;diff=7221</id>
		<title>LPIC102/110.2 Einen Rechner absichern</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=LPIC102/110.2_Einen_Rechner_absichern&amp;diff=7221"/>
		<updated>2019-12-04T20:14:29Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=110.2 Einen Rechner absichern=&lt;br /&gt;
&lt;br /&gt;
==Superdaemons und TCP-Wrapper==&lt;br /&gt;
*absichern gegenüber Angreifern und Hardwareressourcen besser ausnutzen&lt;br /&gt;
&lt;br /&gt;
===Superdeamons inetd und xinetd===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====inetd====&lt;br /&gt;
*Superdeamon, älter als xinetd, &lt;br /&gt;
*lauscht stellvertretend an TCP- und UDP-Ports für Serverdienste,&lt;br /&gt;
*Client nimmt Verbindung mit von inetd kontrolliertem Netzwerkdienst auf, inetd übergibt an TCP-Wrapper als Daemon tcpd, der die Dienste startet und übergibt Kontrolle an Client,&lt;br /&gt;
*welche Dienste inetd kontrollieren soll, muss in &#039;&#039;/etc/inetd.conf&#039;&#039; festegelegt werden,&lt;br /&gt;
*nach Änderung in &#039;&#039;/etc/inetd.conf&#039;&#039;, muss inetd neu gestartet werden, damit Änderung greift&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
wichtig: inetd ist nicht Bestandteil der Prüfung, Erklärung hilft Funktion von xinetd besser zu verstehen&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====xinetd====&lt;br /&gt;
*aktueller Superdeamon, mit integriertem TCP-Wrapper, kann auch Dienste starten, die nicht in Datei &#039;&#039;/etc/services&#039;&#039; eingetragen sind, &lt;br /&gt;
*erheblich mehr Optionen als inetd =&amp;gt; komplexere Konfiguration als inetd,&lt;br /&gt;
*Hauptkonfigurationsdatei: &#039;&#039;/etc/xinetd.conf&#039;&#039;,&lt;br /&gt;
*xinetd hat integrierten Wrapper,  startet Dienste selbst, tcpd hier überflüssig&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===TCP-Wrapper===&lt;br /&gt;
*ist eine Software zum Schutz vor unerwünschtem Zugriff aus einem Rechnernetz,&lt;br /&gt;
*Konfigurationsdateien sind &#039;&#039;/ect/hosts.allow&#039;&#039; und &#039;&#039;/etc/hosts.deny&#039;&#039;,&lt;br /&gt;
*Verarbeitungsweise Konfigurationsdateien ist speziell:&lt;br /&gt;
**bei Eintrag in &#039;&#039;/etc/hosts.allow&#039;&#039;, wird selber Eintrag in &#039;&#039;/etc/hosts.deny&#039;&#039; ignoriert&lt;br /&gt;
**wenn keine Einräge in &#039;&#039;/etc/hosts.allow&#039;&#039; und &#039;&#039;/etc/hosts.deny&#039;&#039; vorhanden sind, wird Zugriff erlaubt&lt;br /&gt;
**wenn eine oder beide Dateien nicht(mehr) vorhanden sind, ist das so als wären beide leer =&amp;gt; Zugriff wird erlaubt&lt;br /&gt;
&lt;br /&gt;
*sichere Grundkionfiguration:&lt;br /&gt;
**erst mal alles verbieten mit Eintrag ALL : ALL in &#039;&#039;/etc/hosts.deny&#039;&#039;&lt;br /&gt;
**dann Schritt für Schritt Zugriffe erlauben in &#039;&#039;/etc/hosts.allow&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Nicht benötigte Dienste und Konten deaktivieren==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===&#039;&#039;/etc/nologin&#039;&#039;, &#039;&#039;/etc/init.d&#039;&#039; und &#039;&#039;/etc/inittab&#039;&#039;, &#039;&#039;/etc/passwd&#039;&#039; und &#039;&#039;/etc/shadow&#039;&#039;===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&#039;&#039;/etc/nologin&#039;&#039;====&lt;br /&gt;
*verhindern, dass sich ein Benutzer interakiv an einem System anmeldet,&lt;br /&gt;
*einfach Datei &#039;&#039;/etc/nologin&#039;&#039; (z.B. mit touch) anlegen,&lt;br /&gt;
*Nachricht für nicht authoriserten Benutzer hinterlassen, Inhalt wird bei Login-Versuch angezeigt&lt;br /&gt;
&lt;br /&gt;
====&#039;&#039;/etc/init.d&#039;&#039; und &#039;&#039;/etc/inittab&#039;&#039;====&lt;br /&gt;
&lt;br /&gt;
=====&#039;&#039;/etc/init.d&#039;&#039;=====&lt;br /&gt;
*Dienste, die dort nicht aufgeführt sind, sind deaktivert&lt;br /&gt;
&lt;br /&gt;
=====&#039;&#039;/etc/inittab&#039;&#039;=====&lt;br /&gt;
*Begrenzung der möglichen TTY-Konsolen, z.B. auf 1 =&amp;gt; verhindert, dass man offene Sitzungen vergißt zu schließen (=hohes Sicherheitsrisiko),&lt;br /&gt;
*(nur noch in älteren Distributionen noch vorhnden; für mehr Infos siehe 101.3)&lt;br /&gt;
&lt;br /&gt;
Anzahl der Konsolen wird heute mit systemd begrenzt:&lt;br /&gt;
*in Datei &#039;&#039;/etc/systemd/logind.conf&#039;&#039; NAutoVTs=1 eintragen&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&#039;&#039;/etc/passwd&#039;&#039; und &#039;&#039;/etc/shadow&#039;&#039;====&lt;br /&gt;
*wichtig ist bei beiden die Verwendung des 2.Feldes&lt;br /&gt;
&lt;br /&gt;
2.Feld bei &#039;&#039;/etc/passwd&#039;&#039;&lt;br /&gt;
*X (heißt, Passwort steht in &#039;&#039;/etc/shadow&#039;&#039;)&lt;br /&gt;
* * (heißt, User darf sich nicht anmelden)&lt;br /&gt;
*Ein Leerzeichen steht für ein leeres Passwort-Verfallszeiten&lt;br /&gt;
&lt;br /&gt;
2.Feld bei &#039;&#039;/etc/shadow&#039;&#039;, hier stehen die verschlüsselten Passwörter &lt;br /&gt;
* ! oder * (heißt Benutzer kann sich mit Unix-Passwort nicht anmelden)&lt;br /&gt;
&lt;br /&gt;
==Quelle==&lt;br /&gt;
*Buch LPIC-1 Version 5 (Kapitel 110.2 S. 443-448)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:LPIC102]]&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=Chown&amp;diff=7220</id>
		<title>Chown</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=Chown&amp;diff=7220"/>
		<updated>2019-12-04T20:07:21Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;chown&#039;&#039;&#039; &#039;&#039;change owner&#039;&#039;&lt;br /&gt;
&#039;&#039;chown&#039;&#039;   ändert den Besitzer und Gruppe einer Datei oder Ordner.&lt;br /&gt;
&lt;br /&gt;
=Syntax=&lt;br /&gt;
&lt;br /&gt;
chown [optionen] [besitzer][:[gruppe]] datei&lt;br /&gt;
&lt;br /&gt;
=Beispiel=&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;chown Besitzername:Besitzergruppe File&#039;&#039;&#039;     Besitzer und Gruppe für ein einzelnes File ändern&lt;br /&gt;
*&#039;&#039;&#039;chown -R Besitzername Verzeichnis&#039;&#039;&#039;   Besitzer für ein Verzeichnis / Ordner und alle Dateien ändern&lt;br /&gt;
&lt;br /&gt;
[[Category:Linuxbefehle]]&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Linux:LPIC:101]]&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=Chgrp&amp;diff=7219</id>
		<title>Chgrp</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=Chgrp&amp;diff=7219"/>
		<updated>2019-12-04T20:06:52Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Bezeichnung=&lt;br /&gt;
&#039;&#039;&#039;chgrp&#039;&#039;&#039; steht für change group und ändert die Gruppenzugehörigkeit von Dateien und Ordnern.&amp;lt;br&amp;gt;&lt;br /&gt;
Man kann diesen Befehl nur auf eine Datei anwenden, wenn man der Eigentümer oder der Superuser ist.&amp;lt;br&amp;gt;&lt;br /&gt;
Es stehen nur die Gruppen denen man selber angehört zur Verfügung.&amp;lt;br&amp;gt;&lt;br /&gt;
=Übersicht=&lt;br /&gt;
  chgrp [Option] Gruppe Datei ... &lt;br /&gt;
=Optionen=&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Option !! Beschreibung&lt;br /&gt;
|-&lt;br /&gt;
|  -c oder --changes || Diese Option zeigt die Dateien an, die geändert werden&lt;br /&gt;
|-&lt;br /&gt;
|  -f oder --force || Fehlermeldungen werden unterdrückt (keine Fehlermeldungen)&lt;br /&gt;
|-&lt;br /&gt;
|  -v oder --verbose || Diese Option zeigt alles was chgrp macht&lt;br /&gt;
|-&lt;br /&gt;
|  -R oder --recursive || Diese Option ermöglicht das rekursive Ändern von Verzeichnissen&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
=Beispiel=&lt;br /&gt;
User ist in der Gruppe musik und ändert die Gruppenzuordnung des Verzeichnis /opt/musik/ und seinem kompletten Inhalt zu musik&amp;lt;br&amp;gt;&lt;br /&gt;
 chgrp -c -R musik /opt/musik/&lt;br /&gt;
&lt;br /&gt;
[[Category:Linuxbefehle]]&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Linux:LPIC:101]]&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=LPIC101/103.1_Auf_der_Kommandozeile_arbeiten&amp;diff=7218</id>
		<title>LPIC101/103.1 Auf der Kommandozeile arbeiten</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=LPIC101/103.1_Auf_der_Kommandozeile_arbeiten&amp;diff=7218"/>
		<updated>2019-12-04T20:05:05Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: /* Wichtiger Dateien, Verzeichnisse und Anwendungen */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Wichtigste Wissensgebiete=&lt;br /&gt;
*Einzelne Shell-Kommandos und einzeilige Kommandofolgen verwenden, um einfache Aufgaben auf der Kommandozeile zu lösen&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Die Shell-Umgebung verwenden und anpassen, etwa um Umgebungsvariablen zu definieren, zu verwenden und zu exportieren&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Die command-history verwenden und ändern&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kommandos innerhalb und außerhalb des definierten Suchpfads aufrufen&lt;br /&gt;
=Wichtiger Dateien, Verzeichnisse und Anwendungen=&lt;br /&gt;
&amp;lt;div style=&amp;quot;column-count:2;-moz-column-count:2;-webkit-column-count:2&amp;quot;&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: bash, echo, export, unset|bash]]&amp;lt;/code&amp;gt;       &lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: which, type#Linuxbefehl: type|type]]&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: bash, echo, export, unset|echo]]&amp;lt;/code&amp;gt;       &lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: which, type|which]]&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: env|env]]&amp;lt;/code&amp;gt;        &lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: man|man]]&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: bash, echo, export, unset|export]]&amp;lt;/code&amp;gt;     &lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: uname|uname]]&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;[[103.1 Auf der Kommandozeile arbeiten#PATH-Variable|pwd]]&amp;lt;/code&amp;gt;        &lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: set|set]]&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: bash, echo, export, unset|unset]]&amp;lt;/code&amp;gt;     &lt;br /&gt;
*&amp;lt;code&amp;gt;[[Bash-History|history]]&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;&#039;&#039;&#039;[[Bash-History|.bash_history]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;      &lt;br /&gt;
*&amp;lt;code&amp;gt;&#039;&#039;&#039;[[Quoting]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Allgemeines=&lt;br /&gt;
*Damit  man  im  Textmodus  mit  dem  Computer  kommunizieren  kann, benötigt man eine Shell. Man kann über diese Shell mit dem Kern(el) Informationen austauschen&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Unter Linux wird standardmäßig die Bash als Shell verwendet. Hierbei handelt es sich um eine Weiterentwicklung  der ursprünglichen  Unix-Shell &#039;&#039;sh&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Die Shell &#039;&#039;sh&#039;&#039; ist immer noch Bestandteil von Linux, wird aber zumindest als Login-Shell  nicht  mehr  so  oft  verwendet&lt;br /&gt;
==Aufbau eines Shell-Kommandos==&lt;br /&gt;
*Ein Kommando besteht aus bis zu drei verschiedenen Komponenten. Die erste Komponente  ist  das  Kommando  selbst,  also  eine ausführbare  Datei,  ein  Skript  oder  ein Shell-interner  Befehl&amp;lt;br&amp;gt;&lt;br /&gt;
*Ein  Kommando  kann  auch  für  sich  allein  stehen  und ohne Optionen oder Argumente funktionieren:&lt;br /&gt;
 archangel:~ # mount&lt;br /&gt;
*Wenn das Kommando &amp;lt;code&amp;gt;mount&amp;lt;/code&amp;gt; ohne Optionen oder Argumente ausgeführt wird, zeigt es aktuell eingehängte Dateisysteme an Es gibt aber auch Konstellationen, in denen ein Kommando mit einer oder mehreren Optionen ausgeführt wird:&lt;br /&gt;
 archangel:~ # mount -a&lt;br /&gt;
*In diesem Beispiel wurde &amp;lt;code&amp;gt;mount&amp;lt;/code&amp;gt; mit der Option &amp;lt;code&amp;gt;-a&amp;lt;/code&amp;gt;  ausgeführt.  Das  Programm  &amp;lt;code&amp;gt;mount&amp;lt;/code&amp;gt; würde mit dieser Option alle in der Datei &#039;&#039;/etc/fstab&#039;&#039; aufgeführten Dateisysteme einhängen&amp;lt;br&amp;gt;&lt;br /&gt;
*Es ist aber auch möglich, &amp;lt;code&amp;gt;mount&amp;lt;/code&amp;gt; ausschließlich mit Argumenten zu versehen:&lt;br /&gt;
 archangel:~ # mount /dev/sda1 /boot&lt;br /&gt;
*Argumente  unterscheiden  sich  von  Optionen.  Eine  Option  sagt  einem  Programm, wie es sich verhalten soll. Argumente teilen einem Programm mit, was es verarbeiten soll&amp;lt;br&amp;gt;&lt;br /&gt;
*Es  ist  möglich,  einem  Programm  sowohl  mehrere  Optionen  als  auch mehrere Argumente zu übergeben. Bei vielen Programmen ist die Reihenfolge sogar variabel:&lt;br /&gt;
 mount -o username=antje,password=xy //fs1/data /mnt/ -t smbfs&lt;br /&gt;
*Das Beispiel zeigt eine Mischung mit einer Option vorn, einer Option hinten und den Argumenten in der Mitte. Der &amp;lt;code&amp;gt;mount&amp;lt;/code&amp;gt;-Befehl baut in diesem Fall eine Netzwerkverbindung zu einem Windows-Computer auf&lt;br /&gt;
==Übergabe der Optionen==&lt;br /&gt;
*Bei der Übergabe von Optionen gibt es mehrere gängige Methoden&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Einige Kommandos verlangen, dass den Optionen ein Bindestrich vorangestellt wird, andere arbeiten auch ohne einleitenden Bindestrich&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Viele Programme sehen vor, dass ganze Wörter als Optionen verwendet werden. Diesen werden in der Regel zwei Bindestriche vorangestellt. Das folgende Beispiel kennen Sie sinngemäß schon aus dem vorangegangenen Kapitel:&lt;br /&gt;
 archangel:~ # rpm --install -vh /i586/fortune-1.0-860.i586.rpm&lt;br /&gt;
 Preparing.. ########################################### [100 %]&lt;br /&gt;
*Ein weiterer prominenter Vertreter der flexiblen Programme ist &amp;lt;code&amp;gt;tar&amp;lt;/code&amp;gt; . Man kann &amp;lt;code&amp;gt;tar&amp;lt;/code&amp;gt; mit normalen Optionen oder Optionswörtern verwenden. Außerdem kann &amp;lt;code&amp;gt;tar&amp;lt;/code&amp;gt; auch Optionen ohne vorangestellte Bindestriche übernehmen. Die folgenden vier Kommandos führen bei &amp;lt;code&amp;gt;tar&amp;lt;/code&amp;gt; zum selben Ergebnis:&lt;br /&gt;
 # tar -x -z -v -f xmbmon205.tar.gz&lt;br /&gt;
 # tar -xzvf xmbmon205.tar.gz&lt;br /&gt;
 # tar xvzf xmbmon205.tar.gz&lt;br /&gt;
 # tar --extract --gzip --verbose --file=xmbmon205.tar.gz&lt;br /&gt;
==Umgebungsvariablen und Shellvariablen==&lt;br /&gt;
*Die Unterschiede zwischen diesen beiden Variablentypen liegen einerseits drin.&lt;br /&gt;
*Durch welche Konfigurationsdateien sie deklariert werden&lt;br /&gt;
*Und demzufolge wann und durch welches Programm sie ausgewertet werden&lt;br /&gt;
*Und andererseits in ihrem Wirkungsbereich:&lt;br /&gt;
**&#039;&#039;&#039;Umgebungsvariablen:&#039;&#039;&#039;  &lt;br /&gt;
***Gelten  für  alle  Shells,  die  ein  Benutzer  verwendet&lt;br /&gt;
***Die Inhalte  dieser  Variablen  werden  an  Subshells  vererbt.  Das  bedeutet,  dass  beim Aufruf  einer  Subshell  ein  automatischer  Export  der  Variablen  in  diese Subshell stattfindet&lt;br /&gt;
***Bei   Umgebungsvariablen   werden   normalerweise   Großbuchstaben verwendet&lt;br /&gt;
**&#039;&#039;&#039;Shellvariablen:&#039;&#039;&#039;&lt;br /&gt;
***Müssen  in  jeder  Subshell, die  durch  den  Benutzer  oder  ein  Skript gestartet  wird,  neu  deklariert werden&lt;br /&gt;
***Es findet  standardmäßig  keine  Vererbung statt&amp;lt;br&amp;gt;&lt;br /&gt;
***Für Shellvariablen verwendet man üblicherweise Kleinbuchstaben&lt;br /&gt;
&lt;br /&gt;
==PATH-Variable==&lt;br /&gt;
*Wenn  man  ein  Programm  ausführen  will,  das  sich  nicht  in  einem  in  Ihrer  PATH-Variablen enthaltenen Verzeichnis befindet, muss man den kompletten Pfad zu diesem Programm auf der Kommandozeile mit angeben&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Wenn man ein Programm ohne Angabe eines Pfades startet, prüft die Shell zunächst, ob es sich um ein internes Kommando  der  Shell  handelt.  Dazu  zählen:  &amp;lt;code&amp;gt;echo, bg, fg,jobs, kill, pwd, set, unset&amp;lt;/code&amp;gt; und viele mehr&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Falls  kein  passendes  Kommando  gefunden wird,  sucht  die  Shell  das  Programm  inallen Verzeichnissen, die in der PATH-Variablen enthalten sind&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Sollten mehrere Programme mit dem gleichen Namen vorhanden sein, wird das zuerst gefundene ausgeführt.  Man kann in  einem  solchen  Fall  das  Kommando  &amp;lt;code&amp;gt;which&amp;lt;/code&amp;gt; verwenden,  um festzustellen, welches Programm die Shell automatisch ausführt:&lt;br /&gt;
 archangel:~ # which less&lt;br /&gt;
 /usr/bin/less&lt;br /&gt;
*Es ist zu beachten, dass ein Programm auch dann nicht ohne Pfadangabe ausgeführt wird, wenn man sich aktuell in dessen Verzeichnis befindet. Dieses Verhalten gibt esunter DOS, aber nicht bei Linux&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Man kann ein Programm, das sich im aktuellen Verzeichnis  befindet,  aber  auch  starten,  indem  Sie  &#039;&#039;./&#039;&#039;  dem  Programm voranstellen.  Die Zeichen &#039;&#039;./&#039;&#039; repräsentieren  das  aktuelle  Verzeichnis.  Sie  können  z. B.  Konfigurationsskripte  von  Tar-Balls  im  aktuellen  Verzeichnis  ausführen,  indem  Sie  folgende Syntax verwenden:&lt;br /&gt;
 archangel:/usr/src/xmbmon205 # ./configure&lt;br /&gt;
*Wenn man einen Prompt verwendet, der ihn nicht anzeigt, in welchem Verzeichnis man sich gerade befindet, verwendet man das Kommando &amp;lt;code&amp;gt;pwd&amp;lt;/code&amp;gt; &#039;&#039;(Path of Working Directory)&#039;&#039; ohne Optionen. Der Pfad wird Ihnen dann angezeigt:&lt;br /&gt;
 archangel:/usr/src/xmbmon205 # pwd&lt;br /&gt;
 /usr/src/xmbmon205&lt;br /&gt;
*Man kann sich den Inhalt Ihrer PATH-Variablen, genau wie den anderer Variablen, anzeigen lassen:&lt;br /&gt;
 archangel:/ # echo $PATH&lt;br /&gt;
 /sbin:/usr/sbin:/usr/local/sbin:/root/bin:/usr/local/bin:/usr/bin:/usr/X11R6/&lt;br /&gt;
 bin:/bin:/usr/games:/opt/gnome/bin:/opt/kde3/bin:/usr/lib/jvm/jre/bin&lt;br /&gt;
==Beliebte Variablen für Prüfungen==&lt;br /&gt;
Manche  Variablen  werden  in  der  Prüfung  immer  wieder  abgefragt.  Dazu  gehören besonders die folgenden:&lt;br /&gt;
*&amp;lt;code&amp;gt;$HISTSIZE&amp;lt;/code&amp;gt; definiert die Anzahl der Kommandos, die in der Befehls-History aufbewahrt werden. Diese Variable wird normalerweise in der Datei &#039;&#039;/etc/profile&#039;&#039; festgelegt&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;$PS1&amp;lt;/code&amp;gt; bestimmt das Aussehen der Eingabeaufforderung (Prompt). Beispiel:&lt;br /&gt;
 root@archangel:~# echo $PS1&lt;br /&gt;
 \u@\h:\w$&lt;br /&gt;
*Die Zeichen &#039;&#039;\u&#039;&#039; stehen für Username&lt;br /&gt;
*Das &#039;&#039;@&#039;&#039; wird normal ausgegeben&lt;br /&gt;
*Die Zeichen &#039;&#039;\h&#039;&#039; werden mit dem Host-Namen ersetzt&lt;br /&gt;
*Es folgt ein Doppelpunkt&lt;br /&gt;
*Anschließend zeigt &#039;&#039;\w&#039;&#039; für  Working  Directory  das  aktuelle  Verzeichnis  an&lt;br /&gt;
*Die  Tilde &#039;&#039;~&#039;&#039; repräsentiert hierbei das Heimatverzeichnis des Benutzers&lt;br /&gt;
*Es folgt ein &#039;&#039;&amp;gt;&#039;&#039;&lt;br /&gt;
*Der Prompt kann durch  Änderung  der  Variablen &#039;&#039;PS1&#039;&#039; den  eigenen  Wünschen angepasst  werden&lt;br /&gt;
*Es empfiehlt sich dann eine Konfiguration in der Datei &#039;&#039;/etc/bashrc&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;$?&amp;lt;/code&amp;gt; enthält das Errorlevel des zuletzt ausgeführten Kommandos. In der Regel bedeutet der Wert 0 in dieser Variablen, dass das letzte Programm erfolgreich ausgeführt wurde. Die Fehlerwerte variieren von Programm zu Programm. Beliebte Werte sind 1 und 127. Beispiel:&lt;br /&gt;
 archangel:~ # Kommando, das es nicht gibt&lt;br /&gt;
 bash: Kommando: command not found&lt;br /&gt;
 archangel:~ # echo $?&lt;br /&gt;
 127&lt;br /&gt;
*Das »Kommando, das es nicht gibt« hat ein Errorlevel von 127 zur Folge&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;$1 , $2&amp;lt;/code&amp;gt; usw. enthalten die Optionen und Argumente, die an ein Programm übergeben werden. Sie werden im Normalfall vom gestarteten Programm oder Skript selbst ausgewertet&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Kontrollfragen=&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Frage 1&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;Antwort&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Frage 2&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;Antwort&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Frage 3&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;Antwort&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Frage 4&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;Antwort&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Frage 5&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;Antwort&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Linux:LPIC:101]]&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=Umask&amp;diff=7215</id>
		<title>Umask</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=Umask&amp;diff=7215"/>
		<updated>2019-12-04T19:58:23Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Bezeichnung=&lt;br /&gt;
&#039;&#039;&#039;umask&#039;&#039;&#039; wird verwendet, um die Benutzerrechte (Lesen (r), Schreiben (w) und Ausführen (x)) für den Benutzer (der ersten drei rwx), die Gruppe (die nächsten drei rwx) und allen anderen (die letzten drei rwx) einzuschränken, denn standardmäßig würden Dateien mit den Rechten rw–rw–rw– (oktal 666) und Verzeichnisse mit rwxrwxrwx (oktal 777) erstellt.&lt;br /&gt;
&lt;br /&gt;
=Übersicht=&lt;br /&gt;
 umask [Maske]&lt;br /&gt;
Mit dem Kommando umask schränken Sie diese Rechte ein, indem vom Standardwert ein entsprechender umask-Wert abgezogen (subtrahiert) wird.&amp;lt;br&amp;gt;&lt;br /&gt;
Hierbei gilt es zu beachten, dass keine Ziffer in umask den Wert 7 überschreitet.&amp;lt;br&amp;gt;&lt;br /&gt;
Ist etwa eine umask von 26 gesetzt, so würde sich dies beim Erzeugen einer Datei wie folgt auswirken:&amp;lt;br&amp;gt;&lt;br /&gt;
Datei:  666 (minus) umask:  026 (ist gleich) Rechte:  640&amp;lt;br&amp;gt;&lt;br /&gt;
Die Datei würde hier praktisch mit den Rechten 640 (rw–r–––––) erzeugt.&amp;lt;br&amp;gt;&lt;br /&gt;
Bitte beachten Sie außerdem, dass immer nur der Wert des zugehörigen oktalen Satzes subtrahiert wird.&amp;lt;br&amp;gt;&lt;br /&gt;
Eine umask von 27 hat also nicht den Effekt, dass der Rest von 6 minus 7 von den Rechten für alle anderen in die Gruppe übertragen wird.&amp;lt;br&amp;gt;&lt;br /&gt;
Bei einer umask von 27 wären die Rechte, mit der die Datei angelegt wird, dieselben wie mit 26.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Linuxbefehle]]&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Linux:LPIC:101]]&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=Test&amp;diff=7214</id>
		<title>Test</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=Test&amp;diff=7214"/>
		<updated>2019-12-04T19:57:08Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Der Befehl &#039;&#039;test&#039;&#039; überprüft Dateien und vergleicht Werte. Vorallem bei Skripten verwendet, um zu testen, ob eine Datei vorhanden ist und ob sie den richtigen Typ hat.&lt;br /&gt;
&lt;br /&gt;
==Syntax==&lt;br /&gt;
&lt;br /&gt;
 $ test &amp;lt;Datei&amp;gt;&lt;br /&gt;
 $ test &amp;lt;Wert1&amp;gt; OPTION &amp;lt;Wert2&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Nur &#039;&#039;test&#039;&#039; ohne Parameter oder Ausdrücke liefert immer den Wert FALSCH.&lt;br /&gt;
*Ein &#039;&#039;test !&#039;&#039; ohne Parameter oder Ausdrücke liefert immer den Wert WAHR.&lt;br /&gt;
*Um herauszufinden, welcher Wert herauskommt, muss man &#039;&#039;echo $?&#039;&#039; eingeben. 0 ist wahr, 1 ist falsch.&lt;br /&gt;
*&#039;&#039;Vor und hinter&#039;&#039; dem Operator ein Leerzeichen, sonst wird es als ein Ausdruck wahrgenommen&lt;br /&gt;
&lt;br /&gt;
 $ test ; echo Der Errorlevel ist $?&lt;br /&gt;
 Der Errorlevel ist 1&lt;br /&gt;
&lt;br /&gt;
 $ test ! ; echo Der Errorlevel ist $?&lt;br /&gt;
 Der Errorlevel ist 0&lt;br /&gt;
&lt;br /&gt;
==Optionen==&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Zeichenkette&lt;br /&gt;
!Option/Ausdruck !! Beschreibung !! Beispiel !! Errorlevel&lt;br /&gt;
|-&lt;br /&gt;
|ZEICHENKETTE || Die Länge der ZEICHENKETTE ist nicht 0 || test Beispiel || 0&lt;br /&gt;
|-&lt;br /&gt;
| -z ZEICHENKETTE || Die Länge der Zeichenkette ist 0 ||test -z Beispiel || 1&lt;br /&gt;
|-&lt;br /&gt;
|ZEICHENKETTE1 = ZEICHENKETTE2 || Die Zeichenketten sind identisch ||test Haha = Haha || 0&lt;br /&gt;
|-&lt;br /&gt;
|ZEICHENKETTE1 != ZEICHENKETTE2 || Die Zeichenketten sind nicht identisch ||test Haha != Haha || 1&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Zahlen&lt;br /&gt;
!Option/Ausdruck !! Beschreibung !! Beispiel !! Errorlevel&lt;br /&gt;
|-&lt;br /&gt;
|ZAHL1 -eq ZAHL2 || ZAHL1 ist gleich ZAHL2 || test 5 -eq 5 || 0&lt;br /&gt;
|-&lt;br /&gt;
|ZAHL1 -ge ZAHL2 || ZAHL1 ist größer als oder gleich ZAHL2 ||test 5 -ge 2 || 0&lt;br /&gt;
|-&lt;br /&gt;
|ZAHL1 -gt ZAHL2 || ZAHL1 ist größer als ZAHL2 ||test 5 -gt 4 || 0&lt;br /&gt;
|-&lt;br /&gt;
|ZAHL1 -lt ZAHL2 || ZAHL1 ist kleiner als ZAHL2 ||test 5 -lt 6 || 0&lt;br /&gt;
|-&lt;br /&gt;
|ZAHL1 -le ZAHL2 || ZAHL1 ist kleiner als oder gleich ZAHL2 ||test 5 -le 7 || 0&lt;br /&gt;
|-&lt;br /&gt;
|ZAHL1 -ne ZAHL2 || ZAHL1 ist nicht gleich ZAHL2 || test 5 -ne 5 || 1&lt;br /&gt;
|}&lt;br /&gt;
Achtung: test kann nur &#039;&#039;ganze Zahlen&#039;&#039; vergleichen.&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Dateien&lt;br /&gt;
!Option/Ausdruck !! Beschreibung&lt;br /&gt;
|-&lt;br /&gt;
|DATEI1 -ef DATEI2 || Die Dateien haben dieselben Geräte- und Inode-Nummern&lt;br /&gt;
|-&lt;br /&gt;
|DATEI1 -nt/-ot DATEI2 || Die Datei ist bzgl. seines Änderungsdatums neuer/älter als die andere Datei&lt;br /&gt;
|-&lt;br /&gt;
| -e || Die Datei existiert&lt;br /&gt;
|-&lt;br /&gt;
| -f || Die Datei existiert und ist eine normale Datei&lt;br /&gt;
|-&lt;br /&gt;
| -d || Die Datei existiert und ist ein Verzeichnis&lt;br /&gt;
|-&lt;br /&gt;
| -b || Die Datei existiert und ist eine blockorientierte Gerätedatei&lt;br /&gt;
|-&lt;br /&gt;
| -c || Die Datei existiert und ist eine charakterorientierte Gerätedatei&lt;br /&gt;
|-&lt;br /&gt;
| -h || Die Datei existiert und ist ein Softlink&lt;br /&gt;
|-&lt;br /&gt;
| -p || Die Datei existiert und ist eine &amp;quot;Named&amp;quot; Pipe&lt;br /&gt;
|-&lt;br /&gt;
| -S || Die Datei existiert und ist ein Socket (&#039;&#039;Achtung! Großes S verwenden! Siehe kleines s&#039;&#039;)&lt;br /&gt;
|-&lt;br /&gt;
| -r || Die Datei existiert und ist lesbar&lt;br /&gt;
|-&lt;br /&gt;
| -w || Die Datei existiert und ist schreibbar&lt;br /&gt;
|-&lt;br /&gt;
| -x || Die Datei existiert und ist ausführbar&lt;br /&gt;
|-&lt;br /&gt;
| -s || Die Datei existiert und hat eine Dateigröße größer als 0&lt;br /&gt;
|-&lt;br /&gt;
| -u || Die Datei existiert und hat das &amp;quot;Set-UID&amp;quot;-Bit gesetzt&lt;br /&gt;
|-&lt;br /&gt;
| -g || Die Datei existiert und hat das &amp;quot;Set-GID&amp;quot;-Bit gesetzt&lt;br /&gt;
|-&lt;br /&gt;
| -k || Die Datei existiert und hat das &amp;quot;Sticky&amp;quot;-Bit gesetzt&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Quelle==&lt;br /&gt;
*Manpage von test&lt;br /&gt;
&lt;br /&gt;
[[Category: Linuxbefehle]]&lt;br /&gt;
[[Category: Linux]]&lt;br /&gt;
[[Benutzer:Alexanderrogers|Alexanderrogers]] ([[Benutzer Diskussion:Alexanderrogers|Diskussion]]) 10:07, 17. Sep. 2019 (CEST)&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=LPIC101/103.3_Grundlegende_Dateiverwaltung&amp;diff=7213</id>
		<title>LPIC101/103.3 Grundlegende Dateiverwaltung</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=LPIC101/103.3_Grundlegende_Dateiverwaltung&amp;diff=7213"/>
		<updated>2019-12-04T19:55:28Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: /* Wichtige Anwendungen zur Dateiverwaltung */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Einleitung=&lt;br /&gt;
In diesem Artikel geht es darum, wie man Dateien und Verzeichnisse durch Kommandos verwalten kann.&lt;br /&gt;
&lt;br /&gt;
==Begriffsklärung==&lt;br /&gt;
Wichtigste Datenverwaltungen:&lt;br /&gt;
Einzelne oder mehrere Dateien, einzelne oder mehrere Verzeichnisse: kopieren, verschieben, löschen, suchen, anzeigen und sortieren.&lt;br /&gt;
&lt;br /&gt;
==Wichtige Anwendungen zur Dateiverwaltung==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Option !! Beschreibung&lt;br /&gt;
|-&lt;br /&gt;
| [[Linuxbefehl: cp|cp]] ||  Eine oder mehrere Dateien kopieren&lt;br /&gt;
|-&lt;br /&gt;
|  [[Linuxbefehl: find|find]]  ||  	Nach Datei(en) in einem Verzeichnis inkl. Unterverzeichniss(en) suchen&lt;br /&gt;
|-&lt;br /&gt;
| [[Mkdir - Verzeichnisse erstellen|mkdir]] || Verzeichnisse erstellen.&lt;br /&gt;
|-&lt;br /&gt;
| [[MV - move and rename files|mv]]  || Dateien und Verzeichnisse verschieben bzw. umbenannen&lt;br /&gt;
|-&lt;br /&gt;
| [[Linuxbefehl: ls|ls]]  || Inhalt eines Verzeichnisses bzw. Ordners anzeigen&lt;br /&gt;
|-&lt;br /&gt;
| [[Linuxbefehl: rm|rm]] 	 ||  Dateien und Verzeichnisse löschen &lt;br /&gt;
|-&lt;br /&gt;
| [[Linuxbefehl: rmdir|rmdir]] ||  Leere Verzeichnisse (nur leere Verzeichnisse) löschen&lt;br /&gt;
|-&lt;br /&gt;
| [[Linuxbefehl: touch|touch]] || Zeitstempel von Dateien ändern&lt;br /&gt;
|-&lt;br /&gt;
| [[Linuxbefehl: tar|tar]] ||  Daten im Archiv sichern (nicht komprimiert)&lt;br /&gt;
|-&lt;br /&gt;
| [[Linuxbefehl: cpio|cpio]] || Archivdaten verwalten&lt;br /&gt;
|-&lt;br /&gt;
| [[Linuxbefehl: dd|dd]] ||  Festplatten, Partitionen oder Dateien bit-genau Kopieren. &lt;br /&gt;
|-&lt;br /&gt;
| [[Linuxbefehl: file|file]] || Typ einer Datei erkennen&lt;br /&gt;
|-&lt;br /&gt;
| [[Dateien komprimieren mit &amp;quot;gzip&amp;quot;|gzip]] || Dateien komprimieren&lt;br /&gt;
|-&lt;br /&gt;
| gunzip || Dateien unkomprimieren&lt;br /&gt;
|-&lt;br /&gt;
| bzip2 || Dateien komprimieren&lt;br /&gt;
|-&lt;br /&gt;
| bunzip2 || Dateien unkomprimieren&lt;br /&gt;
|-&lt;br /&gt;
| xz || Dateien komprimieren&lt;br /&gt;
|-&lt;br /&gt;
| unxz || Dateien unkomprimieren&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Die Tilde==&lt;br /&gt;
[[Tilde|Die Tilde(~)]] zeigt an, dass Sie sich gerade in Ihrem Heimatverzeichnis befinden.&amp;lt;br&amp;gt;&lt;br /&gt;
Die Tilde kann auch in Pfadangaben verwendet werden.&amp;lt;br&amp;gt;&lt;br /&gt;
[[Tilde|Beispiele und mehr Infos zur Tilde (~)]]&lt;br /&gt;
&lt;br /&gt;
==Absolute Pfadangaben==&lt;br /&gt;
[[Absolute Pfadangaben|Absoluter Pfad]] bedeutet, dass Sie den ganzen Pfad vom Hauptverzeichnis aus angeben,&amp;lt;br&amp;gt;&lt;br /&gt;
egal, in welchem Verzeichnis Sie sich selbst gerade befinden.&amp;lt;br&amp;gt;&lt;br /&gt;
Ein Verzeichniswechsel mit einer absoluten Pfadangabe beginnt immer mit einem Slash.&amp;lt;br&amp;gt;&lt;br /&gt;
[[Absolute Pfadangaben|Beispiele und mehr Infos zur Absolute Pfadangaben]]&lt;br /&gt;
&lt;br /&gt;
==Relative Pfadangaben==&lt;br /&gt;
&lt;br /&gt;
Bei einem Verzeichniswechsel mit [[Relative Pfadangaben|Relative Pfadangabe]] bewegen Sie sich relativ zum aktuellen Verzeichnis fort.&amp;lt;br&amp;gt;&lt;br /&gt;
Eine relative Pfadangabe beginnt deshalb nie mit einem Slash.&amp;lt;br&amp;gt;&lt;br /&gt;
[[Relative Pfadangaben|Beispiele und mehr Infos zur Relative Pfadangaben]]&lt;br /&gt;
&lt;br /&gt;
=Kontrollfragen=&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Testfrage 1&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;Antwort1&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Testfrage 2&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;Antwort2&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Testfrage 3&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;Antwort3&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Testfrage 4&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;Antwort4&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Testfrage 5&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;Antwort5&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Linux:LPIC:101]]&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=LPIC101/104.6_-_Harte_und_symbolische_Links&amp;diff=7212</id>
		<title>LPIC101/104.6 - Harte und symbolische Links</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=LPIC101/104.6_-_Harte_und_symbolische_Links&amp;diff=7212"/>
		<updated>2019-12-04T19:52:13Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: /* Wichtiger Dateien, Verzeichnisse und Anwendungen: */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
= Wichtigste Wissensgebiete: =&lt;br /&gt;
#Links anlegen&lt;br /&gt;
#harte und/oder symbolische Links identifizieren&lt;br /&gt;
#Dateien kopieren vs. verlinken&lt;br /&gt;
#Links verwenden, um Systemadministrationsaufgaben zu unterstütze&lt;br /&gt;
&lt;br /&gt;
= Wichtiger Dateien, Verzeichnisse und Anwendungen:=&lt;br /&gt;
*[[Linuxbefehle (Liste)|ln]]&lt;br /&gt;
* [[Linuxbefehl: ls|ls]]&lt;br /&gt;
&lt;br /&gt;
= Allgemeines =&lt;br /&gt;
*Wenn  es  ermöglicht  werden  soll,  auf  eine  Datei  von  verschiedenen  Verzeichnissen aus zuzugreifen, &lt;br /&gt;
*können Sie auf diese Datei einen Link legen, anstatt die Datei in dieverschiedenen  Verzeichnisse  zu  kopieren.  Das  hat  im  Wesentlichen  zwei  Vorteile: Einerseits  sparen  Links  Platz  auf  dem  Datenträger, &lt;br /&gt;
* weil  eine  Datei  nicht  mehrfach vorhanden sein muss, wenn sie über mehr,als nur einen Pfad bereitgestellt werden soll.&lt;br /&gt;
* Andererseits wird die Administration vereinfacht, weil man nicht mehrere Ver-sionen einer Datei pflegen muss.&lt;br /&gt;
&lt;br /&gt;
== Softlinks ==&lt;br /&gt;
Softlinks  werden  auch  als  symbolische  Links  bezeichnet.  Ein  Softlink  ist  im  Prinzip ein Zeiger, der auf eine Datei zeigt. Er belegt nur wenig Speicherplatz auf dem Datenträger, auf dem er angelegt wurde. Die Besonderheiten eines Softlinks sind:&lt;br /&gt;
*Er kann sowohl auf Dateien als auch auf Verzeichnisse verweisen.&lt;br /&gt;
&lt;br /&gt;
*Er kann auf Dateien und Verzeichnisse einer anderen oder der Partition angewendet werden, auf der er sich selbst befindet.&lt;br /&gt;
&lt;br /&gt;
*Er  verwendet  die  Dateiberechtigungen  der  Zieldatei  und  ist  deshalb  immer  mit Lese-, Schreib- und Ausführungsrechten versehen.&lt;br /&gt;
&lt;br /&gt;
*Ein  Softlink  bleibt  bestehen,  wenn  die  Zieldatei  gelöscht  wird.  Man  bezeichnet einen solchen verwaisten Link auch als gebrochenen Link.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Die folgenden kommentierten Kommandos demonstrieren das Verhalten von Softlinks. Das erste Kommando ln-s erzeugt einen Softlink mit der Bezeichnung &lt;br /&gt;
softlink,der  auf  die  existierende  Datei file1 verweist.  Mit  dem  zweiten  Kommando  wird  das Ergebnis der Aktion überprüft:&lt;br /&gt;
 archangel:/testfiles # ln -s file1 softlink&lt;br /&gt;
 archangel:/testfiles # ls -l&lt;br /&gt;
 total 44&lt;br /&gt;
 drwxr-xr-x   2 root root  4096 Jan  2 18:00 .&lt;br /&gt;
 drwxr-xr-x  24 root root  4096 Jan  2 17:55 ..&lt;br /&gt;
 -rw-r--r--   1 root root 35184 Jan  2 17:55 file1&lt;br /&gt;
 lrwxrwxrwx   1 root root     5 Jan  2 18:00 softlink -&amp;gt; file1&lt;br /&gt;
Die erste Spalte der letzten Zeile des Kommandos ls-l zeigt an, dass es sich um einen Link handelt. Beachten Sie bitte auch, dass in der Zugriffssteuerungsliste alle Rechte gesetzt sind. Wenn Sie nun den Modus dieses Links verändern, ändert sich stattdes-sen der Modus der Zieldatei:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
 archangel:/testfiles # chmod a+w softlink&lt;br /&gt;
 archangel:/testfiles # ls -l&lt;br /&gt;
 total 44&lt;br /&gt;
 drwxr-xr-x   2 root root  4096 Jan  2 18:00 .&lt;br /&gt;
 drwxr-xr-x  24 root root  4096 Jan  2 17:55 ..&lt;br /&gt;
 -rw-rw-rw-   1 root root 35184 Jan  2 17:55 file1&lt;br /&gt;
 lrwxrwxrwx   1 root root     5 Jan  2 18:00 softlink -&amp;gt; file1&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Das erste Kommando fügt zu softlink Schreibrechte für alle hinzu. Diese Rechte werden  aber  stattdessen  der  Datei file1 hinzugefügt,wie Sie sehen.Es  gibt  mehrere Methoden, sich die Auswirkungen von Links anzusehen. Mit dem Kommando ls-li kann  z. B.  nachgewiesen  werden,  dass  die Zieldatei und der Softlink  zwei  verschiedene Inodes verwenden:&amp;lt;br&amp;gt;&lt;br /&gt;
 archangel:/testfiles # ls -li&lt;br /&gt;
 total 44&lt;br /&gt;
 1896834 drwxr-xr-x  2 root root  4096 Jan 2 18:00 .&lt;br /&gt;
 2 drwxr-xr-x 24 root root  4096 Jan 2 17:55 ..&lt;br /&gt;
 1896921 -rw-rw-rw-  1 root root 35184 Jan 2 17:55 file1&lt;br /&gt;
 1896920 lrwxrwxrwx  1 root root     5 Jan 2 18:00 softlink -&amp;gt; file1&lt;br /&gt;
Die Datei file1 verwendet den Inode 1896921, während der Softlink softlink den Inode 1896920 belegt. Mit dem Kommando stat kann Ähnliches nachgewiesen werden:&lt;br /&gt;
 archangel:/testfiles # stat softlink&lt;br /&gt;
 File: `softlink&#039; -&amp;gt; `file1&#039;&lt;br /&gt;
 Size: 5         Blocks: 0     IO Block: 4096   symbolic link&lt;br /&gt;
 Device: 302h/770d       Inode: 1896920     Links: 1&lt;br /&gt;
 Access: (0777/lrwxrwxrwx)  Uid: (  0/  root)  Gid: (  0/  root)&lt;br /&gt;
 Access: 2017-01-02 18:26:45.000000000 +0100&lt;br /&gt;
 Modify: 2017-01-02 18:00:07.000000000 +0100&lt;br /&gt;
 Change: 2017-01-02 18:00:07.000000000 +0100&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
In  der  zweiten  Zeile  der  Kommandoausgabe  wird  angezeigt, dass es sich um einen symbolischen Link handelt. Die Zugriffsrechte sind auch noch einmal deutlich dargestellt. Wenden Sie dasselbe Kommando auf die Zieldatei des Links an, ergibt sich folgendes Bild:&lt;br /&gt;
 archangel:/testfiles # stat file1&lt;br /&gt;
 File: `file1&#039;&lt;br /&gt;
 Size: 35184      Blocks: 72     IO Block: 4096   regular file&lt;br /&gt;
 Device: 302h/770d       Inode: 1896921     Links: 1&lt;br /&gt;
 Access: (0666/-rw-rw-rw-)  Uid: (  0/  root)  Gid: (  0/  root)&lt;br /&gt;
 Access: 2017-01-02 17:55:38.000000000 +0100&lt;br /&gt;
 Modify: 2017-01-02 17:55:38.000000000 +0100&lt;br /&gt;
 Change: 2017-01-02 18:01:03.000000000 +0100&lt;br /&gt;
Die  zweite  Zeile  besagt,  dass  es  sich  um eine  gewöhnliche  Datei  handelt.  Auch  hier sieht man deutlich, dass die Zieldatei und der Softlink zwei verschiedene Inodes verwenden.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mit  den  nächsten Kommandos wird  demonstriert,  was  geschieht,  wenn  Sie  die Zieldatei eines symbolischen Links löschen, den Link selbst aber nicht:&lt;br /&gt;
 archangel:/testfiles # rm file1&amp;lt;br&amp;gt;&lt;br /&gt;
Die Zieldatei ist nun gelöscht:&amp;lt;br&amp;gt;&lt;br /&gt;
 archangel:/testfiles # ls -l&lt;br /&gt;
 total 8&lt;br /&gt;
 drwxr-xr-x   2 root root 4096 Jan  2 18:40 .&lt;br /&gt;
 drwxr-xr-x  24 root root 4096 Jan  2 17:55 ..&lt;br /&gt;
 lrwxrwxrwx   1 root root    5 Jan  2 18:00 softlink -&amp;gt; file1&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Der  Softlink  ist,  wie  Sie  sehen,  bestehen geblieben.  Wenn  Sie  nun  versuchen,  über diesen  Link  auf  die  nicht  mehr  existieren&lt;br /&gt;
de  Datei  zuzugreifen,  erhalten  Sie  jedoch eine Fehlermeldung:&lt;br /&gt;
 archangel:/testfiles # cat softlink&lt;br /&gt;
 cat: softlink: No such file or directory &lt;br /&gt;
&lt;br /&gt;
Ein typisches Beispiel für die praktische Verwendung von Softlinks sind die Verlinkungen der init-Skripte, die beim Systemstart abgearbeitet werden. »Runlevel wechseln und das System anhalten oder neu starten«, behandelt. Sie sehen hier einen Teil der Links, die zum Runlevel 3 eines Systems gehören:&lt;br /&gt;
&lt;br /&gt;
 archangel:/etc/rc.d/rc3.d # ls -l&lt;br /&gt;
 total 8&lt;br /&gt;
 drwxr-xr-x   2 root root 4096 Oct 19 21:53 ./&lt;br /&gt;
 drwxr-xr-x  11 root root 4096 Dec 19 11:04 ../&lt;br /&gt;
 lrwxrwxrwx   1 root root    7 Jul 20  2017 K03cron -&amp;gt; ../cron*&lt;br /&gt;
 lrwxrwxrwx   1 root root    8 Jul 20  2017 K03smbfs -&amp;gt; ../smbfs*&lt;br /&gt;
 lrwxrwxrwx   1 root root    6 Jul 20  2017 K05smb -&amp;gt; ../smb*&lt;br /&gt;
 lrwxrwxrwx   1 root root    8 Jul 20  2017 K05squid -&amp;gt; ../squid*&lt;br /&gt;
 ... weitere Zeilen wurden entfernt ...&lt;br /&gt;
== Hardlinks ==&lt;br /&gt;
Bei einem Hardlink handelt es sich eigentlich nur um einen weiteren Verzeichniseintrag für eine existierende Datei.Demzufolge belegt er auch keinen  eigenen Inode und fast gar keinen Speicherplatz im Dateisystem. Daraus ergeben sich völlig andere Eigenschaften im Vergleich zu einem symbolischen Link:&lt;br /&gt;
*Hardlinks können nicht auf Verzeichnisse angewendet werden, sondern nur auf Dateien.&lt;br /&gt;
&lt;br /&gt;
*Hardlinks können nicht partitionsübergreifend eingesetzt werden.&lt;br /&gt;
&lt;br /&gt;
*Es  gibt  keine  verwaisten  bzw.  gebrochenen  Hardlinks.  Eine  Datei  wird  gelöscht,wenn der letzte Hardlink zu dieser Datei gelöscht wird.&lt;br /&gt;
&lt;br /&gt;
*Die Zieldatei und der Hardlink verwenden eine gemeinsame Zugriffssteuerungsliste (ACL).&lt;br /&gt;
&lt;br /&gt;
*Ein Hardlink ist im Nachhinein nicht mehr von seiner Zieldatei zu unterscheiden.&lt;br /&gt;
&lt;br /&gt;
Wenn Sie das Kommando ln ohne Optionen verwenden, wird ein Hardlink erstellt. Die folgenden Kommandos demonstrieren die Eigenarten von Hardlinks. Zunächst werden zwei Hardlinks zu einer  bestehenden  Datei erstellt. Das Kommando ls-l zeigt das Ergebnis der Aktion:&lt;br /&gt;
&lt;br /&gt;
 archangel:/testfiles # ln file1 hardlink1&lt;br /&gt;
 archangel:/testfiles # ln file1 hardlink2&lt;br /&gt;
 archangel:/testfiles # ls -l&lt;br /&gt;
 total 80&lt;br /&gt;
 drwxr-xr-x   2 root root  4096 Jan  2 19:21 .&lt;br /&gt;
 drwxr-xr-x  24 root root  4096 Jan  2 17:55 ..&lt;br /&gt;
 -rw-r--r--   3 root root 22271 Jan  2 19:21 file1&lt;br /&gt;
 -rw-r--r--   3 root root 22271 Jan  2 19:21 hardlink1&lt;br /&gt;
 -rw-r--r--   3 root root 22271 Jan  2 19:21 hardlink2&lt;br /&gt;
&lt;br /&gt;
Die drei Dateien sind offensichtlich gleich groß und verfügen auch sonst über dieselben  Eigenschaften. Mit ls-li soll  festgestellt werden, welche  Inodes  die  Dateien jeweils belegen:&lt;br /&gt;
&lt;br /&gt;
 archangel:/testfiles # ls -li&lt;br /&gt;
 total 80&lt;br /&gt;
 1896834 drwxr-xr-x   2 root root  4096 Jan  2 19:21 .&lt;br /&gt;
 2 drwxr-xr-x  24 root root  4096 Jan  2 17:55 ..&lt;br /&gt;
 1896921 -rw-r--r--   3 root root 22271 Jan  2 19:21 file1&lt;br /&gt;
 1896921 -rw-r--r--   3 root root 22271 Jan  2 19:21 hardlink1&lt;br /&gt;
 1896921 -rw-r--r--   3 root root 22271 Jan  2 19:21 hardlink2&lt;br /&gt;
&lt;br /&gt;
Alle drei Dateien verwenden ein und de nselben Inode. Wenn Sie das Kommando stat auf eine der drei Dateien anwenden, sehen Sie zwei interessante Details. Erstens werden die Hardlinks als reguläre Dateien erkannt, und zweitens erkennt das Programm drei Links. Es wird also auch die ursprüngliche Datei als Link dargestellt:&lt;br /&gt;
&lt;br /&gt;
 archangel:/testfiles # stat hardlink1&lt;br /&gt;
 File: `hardlink1&#039;&lt;br /&gt;
 Size: 22271      Blocks: 48     IO Block: 4096   regular file&lt;br /&gt;
 Device: 302h/770d       Inode: 1896921     Links: 3&lt;br /&gt;
 Access: (0644/-rw-r--r--)  Uid: (  0/  root)  Gid: (  0/  root)&lt;br /&gt;
 Access: 2017-01-02 19:21:30.000000000 +0100&lt;br /&gt;
 Modify: 2017-01-02 19:21:30.000000000 +0100&lt;br /&gt;
 Change: 2017-01-02 19:21:46.000000000 +0100&lt;br /&gt;
&lt;br /&gt;
=Kontrollfragen=&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Testfrage 1&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;Antwort1&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Testfrage 2&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;Antwort2&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Testfrage 3&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;Antwort3&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Testfrage 4&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;Antwort4&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Testfrage 5&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;Antwort5&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Linux:LPIC:101]]&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=LPIC101/103.1_Auf_der_Kommandozeile_arbeiten&amp;diff=7211</id>
		<title>LPIC101/103.1 Auf der Kommandozeile arbeiten</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=LPIC101/103.1_Auf_der_Kommandozeile_arbeiten&amp;diff=7211"/>
		<updated>2019-12-04T19:48:08Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: /* Wichtiger Dateien, Verzeichnisse und Anwendungen */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Wichtigste Wissensgebiete=&lt;br /&gt;
*Einzelne Shell-Kommandos und einzeilige Kommandofolgen verwenden, um einfache Aufgaben auf der Kommandozeile zu lösen&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Die Shell-Umgebung verwenden und anpassen, etwa um Umgebungsvariablen zu definieren, zu verwenden und zu exportieren&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Die command-history verwenden und ändern&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Kommandos innerhalb und außerhalb des definierten Suchpfads aufrufen&lt;br /&gt;
=Wichtiger Dateien, Verzeichnisse und Anwendungen=&lt;br /&gt;
&amp;lt;div style=&amp;quot;column-count:2;-moz-column-count:2;-webkit-column-count:2&amp;quot;&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: bash, echo, export, unset|bash]]&amp;lt;/code&amp;gt;       &lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: which, type|type]]&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: bash, echo, export, unset|echo]]&amp;lt;/code&amp;gt;       &lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: which, type|which]]&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: env|env]]&amp;lt;/code&amp;gt;        &lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: man|man]]&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: bash, echo, export, unset|export]]&amp;lt;/code&amp;gt;     &lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: uname|uname]]&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;[[103.1 Auf der Kommandozeile arbeiten#PATH-Variable|pwd]]&amp;lt;/code&amp;gt;        &lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: set|set]]&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;[[Linuxbefehl: bash, echo, export, unset|unset]]&amp;lt;/code&amp;gt;     &lt;br /&gt;
*&amp;lt;code&amp;gt;[[Bash-History|history]]&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;&#039;&#039;&#039;[[Bash-History|.bash_history]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;      &lt;br /&gt;
*&amp;lt;code&amp;gt;&#039;&#039;&#039;[[Quoting]]&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Allgemeines=&lt;br /&gt;
*Damit  man  im  Textmodus  mit  dem  Computer  kommunizieren  kann, benötigt man eine Shell. Man kann über diese Shell mit dem Kern(el) Informationen austauschen&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Unter Linux wird standardmäßig die Bash als Shell verwendet. Hierbei handelt es sich um eine Weiterentwicklung  der ursprünglichen  Unix-Shell &#039;&#039;sh&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Die Shell &#039;&#039;sh&#039;&#039; ist immer noch Bestandteil von Linux, wird aber zumindest als Login-Shell  nicht  mehr  so  oft  verwendet&lt;br /&gt;
==Aufbau eines Shell-Kommandos==&lt;br /&gt;
*Ein Kommando besteht aus bis zu drei verschiedenen Komponenten. Die erste Komponente  ist  das  Kommando  selbst,  also  eine ausführbare  Datei,  ein  Skript  oder  ein Shell-interner  Befehl&amp;lt;br&amp;gt;&lt;br /&gt;
*Ein  Kommando  kann  auch  für  sich  allein  stehen  und ohne Optionen oder Argumente funktionieren:&lt;br /&gt;
 archangel:~ # mount&lt;br /&gt;
*Wenn das Kommando &amp;lt;code&amp;gt;mount&amp;lt;/code&amp;gt; ohne Optionen oder Argumente ausgeführt wird, zeigt es aktuell eingehängte Dateisysteme an Es gibt aber auch Konstellationen, in denen ein Kommando mit einer oder mehreren Optionen ausgeführt wird:&lt;br /&gt;
 archangel:~ # mount -a&lt;br /&gt;
*In diesem Beispiel wurde &amp;lt;code&amp;gt;mount&amp;lt;/code&amp;gt; mit der Option &amp;lt;code&amp;gt;-a&amp;lt;/code&amp;gt;  ausgeführt.  Das  Programm  &amp;lt;code&amp;gt;mount&amp;lt;/code&amp;gt; würde mit dieser Option alle in der Datei &#039;&#039;/etc/fstab&#039;&#039; aufgeführten Dateisysteme einhängen&amp;lt;br&amp;gt;&lt;br /&gt;
*Es ist aber auch möglich, &amp;lt;code&amp;gt;mount&amp;lt;/code&amp;gt; ausschließlich mit Argumenten zu versehen:&lt;br /&gt;
 archangel:~ # mount /dev/sda1 /boot&lt;br /&gt;
*Argumente  unterscheiden  sich  von  Optionen.  Eine  Option  sagt  einem  Programm, wie es sich verhalten soll. Argumente teilen einem Programm mit, was es verarbeiten soll&amp;lt;br&amp;gt;&lt;br /&gt;
*Es  ist  möglich,  einem  Programm  sowohl  mehrere  Optionen  als  auch mehrere Argumente zu übergeben. Bei vielen Programmen ist die Reihenfolge sogar variabel:&lt;br /&gt;
 mount -o username=antje,password=xy //fs1/data /mnt/ -t smbfs&lt;br /&gt;
*Das Beispiel zeigt eine Mischung mit einer Option vorn, einer Option hinten und den Argumenten in der Mitte. Der &amp;lt;code&amp;gt;mount&amp;lt;/code&amp;gt;-Befehl baut in diesem Fall eine Netzwerkverbindung zu einem Windows-Computer auf&lt;br /&gt;
==Übergabe der Optionen==&lt;br /&gt;
*Bei der Übergabe von Optionen gibt es mehrere gängige Methoden&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Einige Kommandos verlangen, dass den Optionen ein Bindestrich vorangestellt wird, andere arbeiten auch ohne einleitenden Bindestrich&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Viele Programme sehen vor, dass ganze Wörter als Optionen verwendet werden. Diesen werden in der Regel zwei Bindestriche vorangestellt. Das folgende Beispiel kennen Sie sinngemäß schon aus dem vorangegangenen Kapitel:&lt;br /&gt;
 archangel:~ # rpm --install -vh /i586/fortune-1.0-860.i586.rpm&lt;br /&gt;
 Preparing.. ########################################### [100 %]&lt;br /&gt;
*Ein weiterer prominenter Vertreter der flexiblen Programme ist &amp;lt;code&amp;gt;tar&amp;lt;/code&amp;gt; . Man kann &amp;lt;code&amp;gt;tar&amp;lt;/code&amp;gt; mit normalen Optionen oder Optionswörtern verwenden. Außerdem kann &amp;lt;code&amp;gt;tar&amp;lt;/code&amp;gt; auch Optionen ohne vorangestellte Bindestriche übernehmen. Die folgenden vier Kommandos führen bei &amp;lt;code&amp;gt;tar&amp;lt;/code&amp;gt; zum selben Ergebnis:&lt;br /&gt;
 # tar -x -z -v -f xmbmon205.tar.gz&lt;br /&gt;
 # tar -xzvf xmbmon205.tar.gz&lt;br /&gt;
 # tar xvzf xmbmon205.tar.gz&lt;br /&gt;
 # tar --extract --gzip --verbose --file=xmbmon205.tar.gz&lt;br /&gt;
==Umgebungsvariablen und Shellvariablen==&lt;br /&gt;
*Die Unterschiede zwischen diesen beiden Variablentypen liegen einerseits drin.&lt;br /&gt;
*Durch welche Konfigurationsdateien sie deklariert werden&lt;br /&gt;
*Und demzufolge wann und durch welches Programm sie ausgewertet werden&lt;br /&gt;
*Und andererseits in ihrem Wirkungsbereich:&lt;br /&gt;
**&#039;&#039;&#039;Umgebungsvariablen:&#039;&#039;&#039;  &lt;br /&gt;
***Gelten  für  alle  Shells,  die  ein  Benutzer  verwendet&lt;br /&gt;
***Die Inhalte  dieser  Variablen  werden  an  Subshells  vererbt.  Das  bedeutet,  dass  beim Aufruf  einer  Subshell  ein  automatischer  Export  der  Variablen  in  diese Subshell stattfindet&lt;br /&gt;
***Bei   Umgebungsvariablen   werden   normalerweise   Großbuchstaben verwendet&lt;br /&gt;
**&#039;&#039;&#039;Shellvariablen:&#039;&#039;&#039;&lt;br /&gt;
***Müssen  in  jeder  Subshell, die  durch  den  Benutzer  oder  ein  Skript gestartet  wird,  neu  deklariert werden&lt;br /&gt;
***Es findet  standardmäßig  keine  Vererbung statt&amp;lt;br&amp;gt;&lt;br /&gt;
***Für Shellvariablen verwendet man üblicherweise Kleinbuchstaben&lt;br /&gt;
&lt;br /&gt;
==PATH-Variable==&lt;br /&gt;
*Wenn  man  ein  Programm  ausführen  will,  das  sich  nicht  in  einem  in  Ihrer  PATH-Variablen enthaltenen Verzeichnis befindet, muss man den kompletten Pfad zu diesem Programm auf der Kommandozeile mit angeben&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Wenn man ein Programm ohne Angabe eines Pfades startet, prüft die Shell zunächst, ob es sich um ein internes Kommando  der  Shell  handelt.  Dazu  zählen:  &amp;lt;code&amp;gt;echo, bg, fg,jobs, kill, pwd, set, unset&amp;lt;/code&amp;gt; und viele mehr&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Falls  kein  passendes  Kommando  gefunden wird,  sucht  die  Shell  das  Programm  inallen Verzeichnissen, die in der PATH-Variablen enthalten sind&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Sollten mehrere Programme mit dem gleichen Namen vorhanden sein, wird das zuerst gefundene ausgeführt.  Man kann in  einem  solchen  Fall  das  Kommando  &amp;lt;code&amp;gt;which&amp;lt;/code&amp;gt; verwenden,  um festzustellen, welches Programm die Shell automatisch ausführt:&lt;br /&gt;
 archangel:~ # which less&lt;br /&gt;
 /usr/bin/less&lt;br /&gt;
*Es ist zu beachten, dass ein Programm auch dann nicht ohne Pfadangabe ausgeführt wird, wenn man sich aktuell in dessen Verzeichnis befindet. Dieses Verhalten gibt esunter DOS, aber nicht bei Linux&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Man kann ein Programm, das sich im aktuellen Verzeichnis  befindet,  aber  auch  starten,  indem  Sie  &#039;&#039;./&#039;&#039;  dem  Programm voranstellen.  Die Zeichen &#039;&#039;./&#039;&#039; repräsentieren  das  aktuelle  Verzeichnis.  Sie  können  z. B.  Konfigurationsskripte  von  Tar-Balls  im  aktuellen  Verzeichnis  ausführen,  indem  Sie  folgende Syntax verwenden:&lt;br /&gt;
 archangel:/usr/src/xmbmon205 # ./configure&lt;br /&gt;
*Wenn man einen Prompt verwendet, der ihn nicht anzeigt, in welchem Verzeichnis man sich gerade befindet, verwendet man das Kommando &amp;lt;code&amp;gt;pwd&amp;lt;/code&amp;gt; &#039;&#039;(Path of Working Directory)&#039;&#039; ohne Optionen. Der Pfad wird Ihnen dann angezeigt:&lt;br /&gt;
 archangel:/usr/src/xmbmon205 # pwd&lt;br /&gt;
 /usr/src/xmbmon205&lt;br /&gt;
*Man kann sich den Inhalt Ihrer PATH-Variablen, genau wie den anderer Variablen, anzeigen lassen:&lt;br /&gt;
 archangel:/ # echo $PATH&lt;br /&gt;
 /sbin:/usr/sbin:/usr/local/sbin:/root/bin:/usr/local/bin:/usr/bin:/usr/X11R6/&lt;br /&gt;
 bin:/bin:/usr/games:/opt/gnome/bin:/opt/kde3/bin:/usr/lib/jvm/jre/bin&lt;br /&gt;
==Beliebte Variablen für Prüfungen==&lt;br /&gt;
Manche  Variablen  werden  in  der  Prüfung  immer  wieder  abgefragt.  Dazu  gehören besonders die folgenden:&lt;br /&gt;
*&amp;lt;code&amp;gt;$HISTSIZE&amp;lt;/code&amp;gt; definiert die Anzahl der Kommandos, die in der Befehls-History aufbewahrt werden. Diese Variable wird normalerweise in der Datei &#039;&#039;/etc/profile&#039;&#039; festgelegt&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;$PS1&amp;lt;/code&amp;gt; bestimmt das Aussehen der Eingabeaufforderung (Prompt). Beispiel:&lt;br /&gt;
 root@archangel:~# echo $PS1&lt;br /&gt;
 \u@\h:\w$&lt;br /&gt;
*Die Zeichen &#039;&#039;\u&#039;&#039; stehen für Username&lt;br /&gt;
*Das &#039;&#039;@&#039;&#039; wird normal ausgegeben&lt;br /&gt;
*Die Zeichen &#039;&#039;\h&#039;&#039; werden mit dem Host-Namen ersetzt&lt;br /&gt;
*Es folgt ein Doppelpunkt&lt;br /&gt;
*Anschließend zeigt &#039;&#039;\w&#039;&#039; für  Working  Directory  das  aktuelle  Verzeichnis  an&lt;br /&gt;
*Die  Tilde &#039;&#039;~&#039;&#039; repräsentiert hierbei das Heimatverzeichnis des Benutzers&lt;br /&gt;
*Es folgt ein &#039;&#039;&amp;gt;&#039;&#039;&lt;br /&gt;
*Der Prompt kann durch  Änderung  der  Variablen &#039;&#039;PS1&#039;&#039; den  eigenen  Wünschen angepasst  werden&lt;br /&gt;
*Es empfiehlt sich dann eine Konfiguration in der Datei &#039;&#039;/etc/bashrc&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;$?&amp;lt;/code&amp;gt; enthält das Errorlevel des zuletzt ausgeführten Kommandos. In der Regel bedeutet der Wert 0 in dieser Variablen, dass das letzte Programm erfolgreich ausgeführt wurde. Die Fehlerwerte variieren von Programm zu Programm. Beliebte Werte sind 1 und 127. Beispiel:&lt;br /&gt;
 archangel:~ # Kommando, das es nicht gibt&lt;br /&gt;
 bash: Kommando: command not found&lt;br /&gt;
 archangel:~ # echo $?&lt;br /&gt;
 127&lt;br /&gt;
*Das »Kommando, das es nicht gibt« hat ein Errorlevel von 127 zur Folge&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;$1 , $2&amp;lt;/code&amp;gt; usw. enthalten die Optionen und Argumente, die an ein Programm übergeben werden. Sie werden im Normalfall vom gestarteten Programm oder Skript selbst ausgewertet&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Kontrollfragen=&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Frage 1&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;Antwort&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Frage 2&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;Antwort&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Frage 3&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;Antwort&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Frage 4&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;Antwort&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Frage 5&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;Antwort&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Linux:LPIC:101]]&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=Uname&amp;diff=7210</id>
		<title>Uname</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=Uname&amp;diff=7210"/>
		<updated>2019-12-04T19:47:30Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: Alaa Eldhawibi verschob die Seite Uname nach Linuxbefehl: uname, ohne dabei eine Weiterleitung anzulegen&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Der Befehl &amp;lt;code&amp;gt;uname&amp;lt;/code&amp;gt; gibt Informationen zum laufenden System aus. Mit entsprechenden Optionen versehen, können Sie hier auch die Versionsnummer des laufenden Kernels überprüfen.&lt;br /&gt;
Zum Beispiel:&lt;br /&gt;
 root@archangel:~# uname -r&lt;br /&gt;
 2.6.24-23-generic&lt;br /&gt;
Oder:&lt;br /&gt;
 root@archangel:~# uname -a&lt;br /&gt;
 Linux archangel 2.6.24-23-generic #&lt;br /&gt;
 1 SMP Mon Jan 26 00:13:11 UTC 2009 i686 GNU/Linux&lt;br /&gt;
Die von &amp;lt;code&amp;gt;uname&amp;lt;/code&amp;gt; generierten Informationen können Sie im Folgenden benutzen, um sich genauere Informationen über bestimmte Module anzusehen oder um die zum laufenden Kernel passenden Module zu laden bzw. zu entladen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Linuxbefehle]]&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Linux:LPIC:101]]&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=Uname&amp;diff=7209</id>
		<title>Uname</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=Uname&amp;diff=7209"/>
		<updated>2019-12-04T19:47:10Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Der Befehl &amp;lt;code&amp;gt;uname&amp;lt;/code&amp;gt; gibt Informationen zum laufenden System aus. Mit entsprechenden Optionen versehen, können Sie hier auch die Versionsnummer des laufenden Kernels überprüfen.&lt;br /&gt;
Zum Beispiel:&lt;br /&gt;
 root@archangel:~# uname -r&lt;br /&gt;
 2.6.24-23-generic&lt;br /&gt;
Oder:&lt;br /&gt;
 root@archangel:~# uname -a&lt;br /&gt;
 Linux archangel 2.6.24-23-generic #&lt;br /&gt;
 1 SMP Mon Jan 26 00:13:11 UTC 2009 i686 GNU/Linux&lt;br /&gt;
Die von &amp;lt;code&amp;gt;uname&amp;lt;/code&amp;gt; generierten Informationen können Sie im Folgenden benutzen, um sich genauere Informationen über bestimmte Module anzusehen oder um die zum laufenden Kernel passenden Module zu laden bzw. zu entladen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Linuxbefehle]]&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Linux:LPIC:101]]&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=Rsync&amp;diff=7206</id>
		<title>Rsync</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=Rsync&amp;diff=7206"/>
		<updated>2019-12-04T19:39:23Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: Alaa Eldhawibi verschob die Seite Rsync nach Linuxbefehl: rsync, ohne dabei eine Weiterleitung anzulegen&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Anwendung=&lt;br /&gt;
* Datensicherung und Spiegelserver („mirror“)&lt;br /&gt;
=Arbeitsweise=&lt;br /&gt;
*arbeitet unidirektional, d.h. Übertragung der Datei/en vom Quellverzeichnis zum Zielverzeichnis (umgekehrt nicht möglich)&lt;br /&gt;
*rsync selbst überträgt Daten unverschlüsselt&lt;br /&gt;
&lt;br /&gt;
=Remote=&lt;br /&gt;
*Zugriffsmöglichkeit über Remote-Shell SSH (verschlüsselt) oder RSH (unverschlüsselt)&lt;br /&gt;
&lt;br /&gt;
=Alleinstellungsmerkmale=&lt;br /&gt;
*Delta-Transfer-Algorithmus: &lt;br /&gt;
:Es werden nicht nur ganze Dateien, sondern, wenn vorhanden, nur die geänderten Teile einer Datei. Dies spart Bandbreite und Zeit.&lt;br /&gt;
* Quick-Check-Algorithmus:&lt;br /&gt;
:Größe und Änderungszeit von Dateien in Quelle und Ziel werden verglichen.&lt;br /&gt;
=Installation=&lt;br /&gt;
 # apt-get install rsync&lt;br /&gt;
=Befehlssyntax=&lt;br /&gt;
 rsync [Optionen] Quelle(n) Ziel&lt;br /&gt;
besonders wichtige Option -a&lt;br /&gt;
Diese fasst folgende Optionen zusammen:&lt;br /&gt;
*-r 	kopiert Unterverzeichnisse &lt;br /&gt;
*-l 	kopiert symbolische Links &lt;br /&gt;
*-p 	behält Rechte der Quelldatei bei &lt;br /&gt;
*-t 	behält Zeiten der Quelldatei bei&lt;br /&gt;
*-g 	behält Gruppenrechte der Quelldatei bei &lt;br /&gt;
*-o 	behält Besitzrechte der Quelldatei bei (nur root) &lt;br /&gt;
*-D 	behält Gerätedateien der Quelldatei bei (nur root) &lt;br /&gt;
&lt;br /&gt;
Ist also äquivalent zu -rlptgoD&lt;br /&gt;
&lt;br /&gt;
Beispiele:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;rsync -a /home/user /data/backup&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
d.h. erzeugt Verzeichnis /user in /data/backup, also wird in /data/backup/user geschrieben.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;rsync -a /home/user/ /data/backup&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
d.h. Daten aus /home/user/ werden in das Verzeichnis /data/backup geschrieben.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=&amp;gt; ohne Angabe Slash beim Quellverzeichnis wird im angegebenen Zielverzeichnis zusätzliches Unterverzeichnis erstellt, muss beachtet werden, kann zu Problemen führen (/data/backup/user ist nicht gleich /data/backup und Maschinen sind stur)&lt;br /&gt;
&lt;br /&gt;
WICHTIG:&lt;br /&gt;
Kopiert man das gesamte Homeverzeichnis, so werden auch private Daten, wie die privaten Schlüssel von SSH und GnuPG kopiert. &lt;br /&gt;
sync kann nur das kopieren, wozu der Nutzer auch Rechte hat.&lt;br /&gt;
Die Option --delete bedeutet, wirklich delete.&lt;br /&gt;
&lt;br /&gt;
=Links=&lt;br /&gt;
man rsync&lt;br /&gt;
&lt;br /&gt;
[https://de.wikipedia.org/wiki/Rsync Wikipedia]&lt;br /&gt;
[https://www.thomas-krenn.com/de/wiki/Daten_mit_rsync_unter_Linux_synchronisieren?xtxsearchselecthit=1 Thomas Krenn]&lt;br /&gt;
[https://wiki.ubuntuusers.de/rsync/ wiki.ubuntuusers]&lt;br /&gt;
&lt;br /&gt;
[[Category:Linuxbefehle]]&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Linux:LPIC:101]]&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=Rsync&amp;diff=7205</id>
		<title>Rsync</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=Rsync&amp;diff=7205"/>
		<updated>2019-12-04T19:39:04Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Anwendung=&lt;br /&gt;
* Datensicherung und Spiegelserver („mirror“)&lt;br /&gt;
=Arbeitsweise=&lt;br /&gt;
*arbeitet unidirektional, d.h. Übertragung der Datei/en vom Quellverzeichnis zum Zielverzeichnis (umgekehrt nicht möglich)&lt;br /&gt;
*rsync selbst überträgt Daten unverschlüsselt&lt;br /&gt;
&lt;br /&gt;
=Remote=&lt;br /&gt;
*Zugriffsmöglichkeit über Remote-Shell SSH (verschlüsselt) oder RSH (unverschlüsselt)&lt;br /&gt;
&lt;br /&gt;
=Alleinstellungsmerkmale=&lt;br /&gt;
*Delta-Transfer-Algorithmus: &lt;br /&gt;
:Es werden nicht nur ganze Dateien, sondern, wenn vorhanden, nur die geänderten Teile einer Datei. Dies spart Bandbreite und Zeit.&lt;br /&gt;
* Quick-Check-Algorithmus:&lt;br /&gt;
:Größe und Änderungszeit von Dateien in Quelle und Ziel werden verglichen.&lt;br /&gt;
=Installation=&lt;br /&gt;
 # apt-get install rsync&lt;br /&gt;
=Befehlssyntax=&lt;br /&gt;
 rsync [Optionen] Quelle(n) Ziel&lt;br /&gt;
besonders wichtige Option -a&lt;br /&gt;
Diese fasst folgende Optionen zusammen:&lt;br /&gt;
*-r 	kopiert Unterverzeichnisse &lt;br /&gt;
*-l 	kopiert symbolische Links &lt;br /&gt;
*-p 	behält Rechte der Quelldatei bei &lt;br /&gt;
*-t 	behält Zeiten der Quelldatei bei&lt;br /&gt;
*-g 	behält Gruppenrechte der Quelldatei bei &lt;br /&gt;
*-o 	behält Besitzrechte der Quelldatei bei (nur root) &lt;br /&gt;
*-D 	behält Gerätedateien der Quelldatei bei (nur root) &lt;br /&gt;
&lt;br /&gt;
Ist also äquivalent zu -rlptgoD&lt;br /&gt;
&lt;br /&gt;
Beispiele:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;rsync -a /home/user /data/backup&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
d.h. erzeugt Verzeichnis /user in /data/backup, also wird in /data/backup/user geschrieben.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;rsync -a /home/user/ /data/backup&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
d.h. Daten aus /home/user/ werden in das Verzeichnis /data/backup geschrieben.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=&amp;gt; ohne Angabe Slash beim Quellverzeichnis wird im angegebenen Zielverzeichnis zusätzliches Unterverzeichnis erstellt, muss beachtet werden, kann zu Problemen führen (/data/backup/user ist nicht gleich /data/backup und Maschinen sind stur)&lt;br /&gt;
&lt;br /&gt;
WICHTIG:&lt;br /&gt;
Kopiert man das gesamte Homeverzeichnis, so werden auch private Daten, wie die privaten Schlüssel von SSH und GnuPG kopiert. &lt;br /&gt;
sync kann nur das kopieren, wozu der Nutzer auch Rechte hat.&lt;br /&gt;
Die Option --delete bedeutet, wirklich delete.&lt;br /&gt;
&lt;br /&gt;
=Links=&lt;br /&gt;
man rsync&lt;br /&gt;
&lt;br /&gt;
[https://de.wikipedia.org/wiki/Rsync Wikipedia]&lt;br /&gt;
[https://www.thomas-krenn.com/de/wiki/Daten_mit_rsync_unter_Linux_synchronisieren?xtxsearchselecthit=1 Thomas Krenn]&lt;br /&gt;
[https://wiki.ubuntuusers.de/rsync/ wiki.ubuntuusers]&lt;br /&gt;
&lt;br /&gt;
[[Category:Linuxbefehle]]&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Linux:LPIC:101]]&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=Passwd&amp;diff=7204</id>
		<title>Passwd</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=Passwd&amp;diff=7204"/>
		<updated>2019-12-04T19:38:00Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: Alaa Eldhawibi verschob die Seite Passwd nach Linuxbefehl: passwd, ohne dabei eine Weiterleitung anzulegen&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;passwd ist dafür da um Passwörter für Benutzer sowie für root zu ändern.&lt;br /&gt;
&lt;br /&gt;
Die allgemeine Syntax zum Verwalten (Sperren, Löschen etc.) eines Benutzers lautet [1]:&lt;br /&gt;
&lt;br /&gt;
 passwd [OPTIONEN] [BENUTZERNAME]&lt;br /&gt;
&lt;br /&gt;
# Das eigene Passwort lässt sich durch die Eingabe von &amp;lt;code&amp;gt;passwd&amp;lt;/code&amp;gt; ändern.&lt;br /&gt;
# Möchte man ein Passwort eines anderen Benutzers ändern, muss man dies als Administrator [2] mit dem Befehl:&lt;br /&gt;
&lt;br /&gt;
 sudo passwd BENUTZERNAME&lt;br /&gt;
&lt;br /&gt;
[[Category:Sicherheit]] &lt;br /&gt;
[[Category:Linuxbefehle]]&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Linux:LPIC:101]]&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=Passwd&amp;diff=7203</id>
		<title>Passwd</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=Passwd&amp;diff=7203"/>
		<updated>2019-12-04T19:37:20Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;passwd ist dafür da um Passwörter für Benutzer sowie für root zu ändern.&lt;br /&gt;
&lt;br /&gt;
Die allgemeine Syntax zum Verwalten (Sperren, Löschen etc.) eines Benutzers lautet [1]:&lt;br /&gt;
&lt;br /&gt;
 passwd [OPTIONEN] [BENUTZERNAME]&lt;br /&gt;
&lt;br /&gt;
# Das eigene Passwort lässt sich durch die Eingabe von &amp;lt;code&amp;gt;passwd&amp;lt;/code&amp;gt; ändern.&lt;br /&gt;
# Möchte man ein Passwort eines anderen Benutzers ändern, muss man dies als Administrator [2] mit dem Befehl:&lt;br /&gt;
&lt;br /&gt;
 sudo passwd BENUTZERNAME&lt;br /&gt;
&lt;br /&gt;
[[Category:Sicherheit]] &lt;br /&gt;
[[Category:Linuxbefehle]]&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Linux:LPIC:101]]&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=Rm&amp;diff=7202</id>
		<title>Rm</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=Rm&amp;diff=7202"/>
		<updated>2019-12-04T19:36:27Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: Alaa Eldhawibi verschob die Seite Rm nach Linuxbefehl: rm, ohne dabei eine Weiterleitung anzulegen&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Bezeichnung=&lt;br /&gt;
&#039;&#039;&#039;rm&#039;&#039;&#039; — Remove File&lt;br /&gt;
&lt;br /&gt;
rm löscht Dateien und Verzeichnisse&lt;br /&gt;
&lt;br /&gt;
=Übersicht=&lt;br /&gt;
&lt;br /&gt;
rm [Option] Datei oder Verzeichniss&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
=Optionen=&lt;br /&gt;
&#039;&#039;&#039;rm -i&#039;&#039;&#039;:	Steht für interactive. Fragt bei jedem Löschvorgang ob die Datei wirklich gelöscht werden soll, dies muss dann mit der   Taste „y“ bestätigt werden.&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;rm -r&#039;&#039;&#039;:	Steht für „recursive“. Hier werden alle Dateien und Ordner rekursiv vom angegebenen Pfad gelöscht.&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;rm -v&#039;&#039;&#039;:	Steht für „verbose“ und Zeigt alles an was der Befehl rm gerade macht.&lt;br /&gt;
&lt;br /&gt;
=Beispiel= 	&lt;br /&gt;
&lt;br /&gt;
 rm dateixyz.txt: &amp;quot;Löscht die Datei „dateixyz.txt“ im aktuellen Arbeitsverzeichnis&amp;quot;&lt;br /&gt;
 rm -r /tmp: &amp;quot;Löscht das Verzeichnis /tmp inkl. aller Dateien und Unterordner (rekursiv)&amp;quot;&lt;br /&gt;
 rm -rv /tmp: &amp;quot;Löscht das Verzeichnis /tmp inkl. aller Dateien und Unterordner (rekursiv) und Zeigt dabei genau an was es                 gerade macht (verbose)&amp;quot;&lt;br /&gt;
 rm -ri /tmp: &amp;quot;Löscht das Verzeichnis /tmp inkl. aller Dateien und Unterordner (rekursiv) und fragt bei jedem Löschvorgang            nach ob es dies auch wirklich machen soll&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Linuxbefehle]]&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Linux:LPIC:101]]&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=Rm&amp;diff=7201</id>
		<title>Rm</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=Rm&amp;diff=7201"/>
		<updated>2019-12-04T19:36:07Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Bezeichnung=&lt;br /&gt;
&#039;&#039;&#039;rm&#039;&#039;&#039; — Remove File&lt;br /&gt;
&lt;br /&gt;
rm löscht Dateien und Verzeichnisse&lt;br /&gt;
&lt;br /&gt;
=Übersicht=&lt;br /&gt;
&lt;br /&gt;
rm [Option] Datei oder Verzeichniss&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
=Optionen=&lt;br /&gt;
&#039;&#039;&#039;rm -i&#039;&#039;&#039;:	Steht für interactive. Fragt bei jedem Löschvorgang ob die Datei wirklich gelöscht werden soll, dies muss dann mit der   Taste „y“ bestätigt werden.&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;rm -r&#039;&#039;&#039;:	Steht für „recursive“. Hier werden alle Dateien und Ordner rekursiv vom angegebenen Pfad gelöscht.&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;rm -v&#039;&#039;&#039;:	Steht für „verbose“ und Zeigt alles an was der Befehl rm gerade macht.&lt;br /&gt;
&lt;br /&gt;
=Beispiel= 	&lt;br /&gt;
&lt;br /&gt;
 rm dateixyz.txt: &amp;quot;Löscht die Datei „dateixyz.txt“ im aktuellen Arbeitsverzeichnis&amp;quot;&lt;br /&gt;
 rm -r /tmp: &amp;quot;Löscht das Verzeichnis /tmp inkl. aller Dateien und Unterordner (rekursiv)&amp;quot;&lt;br /&gt;
 rm -rv /tmp: &amp;quot;Löscht das Verzeichnis /tmp inkl. aller Dateien und Unterordner (rekursiv) und Zeigt dabei genau an was es                 gerade macht (verbose)&amp;quot;&lt;br /&gt;
 rm -ri /tmp: &amp;quot;Löscht das Verzeichnis /tmp inkl. aller Dateien und Unterordner (rekursiv) und fragt bei jedem Löschvorgang            nach ob es dies auch wirklich machen soll&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Linuxbefehle]]&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Linux:LPIC:101]]&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=Set&amp;diff=7200</id>
		<title>Set</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=Set&amp;diff=7200"/>
		<updated>2019-12-04T19:32:17Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: Alaa Eldhawibi verschob die Seite Set nach Linuxbefehl: set, ohne dabei eine Weiterleitung anzulegen&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Sie können sich alle aktuell gesetzten Shellvariablen anzeigen lassen, indem Sie das Kommando &amp;lt;code&amp;gt;set&amp;lt;/code&amp;gt; ohne  Optionen und  Argumente  verwenden.  Da  die  Ausgabe  des Kommandos recht umfangreich ist, lohnt sich eine Ausgabe mit dem Pager &amp;lt;code&amp;gt;less&amp;lt;/code&amp;gt;:&lt;br /&gt;
 archangel:~ # set | less&lt;br /&gt;
 BASH=/bin/bash&lt;br /&gt;
 BASH_ARGC=()&lt;br /&gt;
 BASH_ARGV=()&lt;br /&gt;
 ... ca. 800 Zeilen wurden abgeschnitten ...&lt;br /&gt;
&lt;br /&gt;
[[Category:Linuxbefehle]]&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Linux:LPIC:101]]&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=Set&amp;diff=7199</id>
		<title>Set</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=Set&amp;diff=7199"/>
		<updated>2019-12-04T19:31:56Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Sie können sich alle aktuell gesetzten Shellvariablen anzeigen lassen, indem Sie das Kommando &amp;lt;code&amp;gt;set&amp;lt;/code&amp;gt; ohne  Optionen und  Argumente  verwenden.  Da  die  Ausgabe  des Kommandos recht umfangreich ist, lohnt sich eine Ausgabe mit dem Pager &amp;lt;code&amp;gt;less&amp;lt;/code&amp;gt;:&lt;br /&gt;
 archangel:~ # set | less&lt;br /&gt;
 BASH=/bin/bash&lt;br /&gt;
 BASH_ARGC=()&lt;br /&gt;
 BASH_ARGV=()&lt;br /&gt;
 ... ca. 800 Zeilen wurden abgeschnitten ...&lt;br /&gt;
&lt;br /&gt;
[[Category:Linuxbefehle]]&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Linux:LPIC:101]]&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=Test&amp;diff=7197</id>
		<title>Test</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=Test&amp;diff=7197"/>
		<updated>2019-12-04T19:27:53Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: Alaa Eldhawibi verschob die Seite Befehl test nach Linuxbefehl: test, ohne dabei eine Weiterleitung anzulegen&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Der Befehl &#039;&#039;test&#039;&#039; überprüft Dateien und vergleicht Werte. Vorallem bei Skripten verwendet, um zu testen, ob eine Datei vorhanden ist und ob sie den richtigen Typ hat.&lt;br /&gt;
&lt;br /&gt;
==Syntax==&lt;br /&gt;
&lt;br /&gt;
 $ test &amp;lt;Datei&amp;gt;&lt;br /&gt;
 $ test &amp;lt;Wert1&amp;gt; OPTION &amp;lt;Wert2&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Nur &#039;&#039;test&#039;&#039; ohne Parameter oder Ausdrücke liefert immer den Wert FALSCH.&lt;br /&gt;
*Ein &#039;&#039;test !&#039;&#039; ohne Parameter oder Ausdrücke liefert immer den Wert WAHR.&lt;br /&gt;
*Um herauszufinden, welcher Wert herauskommt, muss man &#039;&#039;echo $?&#039;&#039; eingeben. 0 ist wahr, 1 ist falsch.&lt;br /&gt;
*&#039;&#039;Vor und hinter&#039;&#039; dem Operator ein Leerzeichen, sonst wird es als ein Ausdruck wahrgenommen&lt;br /&gt;
&lt;br /&gt;
 $ test ; echo Der Errorlevel ist $?&lt;br /&gt;
 Der Errorlevel ist 1&lt;br /&gt;
&lt;br /&gt;
 $ test ! ; echo Der Errorlevel ist $?&lt;br /&gt;
 Der Errorlevel ist 0&lt;br /&gt;
&lt;br /&gt;
==Optionen==&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Zeichenkette&lt;br /&gt;
!Option/Ausdruck !! Beschreibung !! Beispiel !! Errorlevel&lt;br /&gt;
|-&lt;br /&gt;
|ZEICHENKETTE || Die Länge der ZEICHENKETTE ist nicht 0 || test Beispiel || 0&lt;br /&gt;
|-&lt;br /&gt;
| -z ZEICHENKETTE || Die Länge der Zeichenkette ist 0 ||test -z Beispiel || 1&lt;br /&gt;
|-&lt;br /&gt;
|ZEICHENKETTE1 = ZEICHENKETTE2 || Die Zeichenketten sind identisch ||test Haha = Haha || 0&lt;br /&gt;
|-&lt;br /&gt;
|ZEICHENKETTE1 != ZEICHENKETTE2 || Die Zeichenketten sind nicht identisch ||test Haha != Haha || 1&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Zahlen&lt;br /&gt;
!Option/Ausdruck !! Beschreibung !! Beispiel !! Errorlevel&lt;br /&gt;
|-&lt;br /&gt;
|ZAHL1 -eq ZAHL2 || ZAHL1 ist gleich ZAHL2 || test 5 -eq 5 || 0&lt;br /&gt;
|-&lt;br /&gt;
|ZAHL1 -ge ZAHL2 || ZAHL1 ist größer als oder gleich ZAHL2 ||test 5 -ge 2 || 0&lt;br /&gt;
|-&lt;br /&gt;
|ZAHL1 -gt ZAHL2 || ZAHL1 ist größer als ZAHL2 ||test 5 -gt 4 || 0&lt;br /&gt;
|-&lt;br /&gt;
|ZAHL1 -lt ZAHL2 || ZAHL1 ist kleiner als ZAHL2 ||test 5 -lt 6 || 0&lt;br /&gt;
|-&lt;br /&gt;
|ZAHL1 -le ZAHL2 || ZAHL1 ist kleiner als oder gleich ZAHL2 ||test 5 -le 7 || 0&lt;br /&gt;
|-&lt;br /&gt;
|ZAHL1 -ne ZAHL2 || ZAHL1 ist nicht gleich ZAHL2 || test 5 -ne 5 || 1&lt;br /&gt;
|}&lt;br /&gt;
Achtung: test kann nur &#039;&#039;ganze Zahlen&#039;&#039; vergleichen.&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Dateien&lt;br /&gt;
!Option/Ausdruck !! Beschreibung&lt;br /&gt;
|-&lt;br /&gt;
|DATEI1 -ef DATEI2 || Die Dateien haben dieselben Geräte- und Inode-Nummern&lt;br /&gt;
|-&lt;br /&gt;
|DATEI1 -nt/-ot DATEI2 || Die Datei ist bzgl. seines Änderungsdatums neuer/älter als die andere Datei&lt;br /&gt;
|-&lt;br /&gt;
| -e || Die Datei existiert&lt;br /&gt;
|-&lt;br /&gt;
| -f || Die Datei existiert und ist eine normale Datei&lt;br /&gt;
|-&lt;br /&gt;
| -d || Die Datei existiert und ist ein Verzeichnis&lt;br /&gt;
|-&lt;br /&gt;
| -b || Die Datei existiert und ist eine blockorientierte Gerätedatei&lt;br /&gt;
|-&lt;br /&gt;
| -c || Die Datei existiert und ist eine charakterorientierte Gerätedatei&lt;br /&gt;
|-&lt;br /&gt;
| -h || Die Datei existiert und ist ein Softlink&lt;br /&gt;
|-&lt;br /&gt;
| -p || Die Datei existiert und ist eine &amp;quot;Named&amp;quot; Pipe&lt;br /&gt;
|-&lt;br /&gt;
| -S || Die Datei existiert und ist ein Socket (&#039;&#039;Achtung! Großes S verwenden! Siehe kleines s&#039;&#039;)&lt;br /&gt;
|-&lt;br /&gt;
| -r || Die Datei existiert und ist lesbar&lt;br /&gt;
|-&lt;br /&gt;
| -w || Die Datei existiert und ist schreibbar&lt;br /&gt;
|-&lt;br /&gt;
| -x || Die Datei existiert und ist ausführbar&lt;br /&gt;
|-&lt;br /&gt;
| -s || Die Datei existiert und hat eine Dateigröße größer als 0&lt;br /&gt;
|-&lt;br /&gt;
| -u || Die Datei existiert und hat das &amp;quot;Set-UID&amp;quot;-Bit gesetzt&lt;br /&gt;
|-&lt;br /&gt;
| -g || Die Datei existiert und hat das &amp;quot;Set-GID&amp;quot;-Bit gesetzt&lt;br /&gt;
|-&lt;br /&gt;
| -k || Die Datei existiert und hat das &amp;quot;Sticky&amp;quot;-Bit gesetzt&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Quelle==&lt;br /&gt;
*Manpage von test&lt;br /&gt;
&lt;br /&gt;
[[Category: Linuxbefehle]]&lt;br /&gt;
&lt;br /&gt;
[[Benutzer:Alexanderrogers|Alexanderrogers]] ([[Benutzer Diskussion:Alexanderrogers|Diskussion]]) 10:07, 17. Sep. 2019 (CEST)&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=Env&amp;diff=7194</id>
		<title>Env</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=Env&amp;diff=7194"/>
		<updated>2019-12-04T19:24:49Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: Alaa Eldhawibi verschob die Seite Env nach Linuxbefehl: env, ohne dabei eine Weiterleitung anzulegen&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Um die Umgebungsvariablen aufzulisten, nutzen Sie das Kommando &amp;lt;code&amp;gt;env&amp;lt;/code&amp;gt; Da  die  Ausgabe  des Kommandos recht umfangreich ist, lohnt sich eine Ausgabe mit dem Pager &amp;lt;code&amp;gt;less&amp;lt;/code&amp;gt;:&lt;br /&gt;
 archangel:~ # env | less&lt;br /&gt;
 LESSKEY=/etc/lesskey.bin&lt;br /&gt;
 HOSTNAME=archangel&lt;br /&gt;
 HOST=archangel&lt;br /&gt;
 TERM=xterm&lt;br /&gt;
 SHELL=/bin/bash&lt;br /&gt;
 ... ca. 60 Zeilen wurden abgeschnitten ...&lt;br /&gt;
&lt;br /&gt;
[[Category:Linuxbefehle]]&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Linux:LPIC:101]]&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=Df&amp;diff=7193</id>
		<title>Df</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=Df&amp;diff=7193"/>
		<updated>2019-12-04T19:23:04Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: Alaa Eldhawibi verschob die Seite Df nach Linuxbefehl: df, ohne dabei eine Weiterleitung anzulegen&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Bezeichnung=&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;df&#039;&#039;&#039;  (disk free) zeigt den freien Festplattenplatz&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;df&#039;&#039;&#039;  zeigt den freien Festplattenplatz für das Dateisystem, in dem das Verzeichnis Pfad angesiedelt ist.&lt;br /&gt;
&lt;br /&gt;
=Übersicht=&lt;br /&gt;
&lt;br /&gt;
df[-aikPv] [-t Fstyp] [-all] [-inodes] [-type fstype] [-kilobytes] [-portability] [Pfad ...]&lt;br /&gt;
&lt;br /&gt;
=Optionen=&lt;br /&gt;
&lt;br /&gt;
-&#039;&#039;&#039;a&#039;&#039;&#039; (all) zeigt alle Dateisysteme an, einschließlich der mit 0 Bytes Kapazität und der vom Typ ignore oder auto&lt;br /&gt;
&lt;br /&gt;
-&#039;&#039;&#039;i&#039;&#039;&#039; (inodes) zeigt die Auslastung der Inodes anstelle der Blockauslastung&lt;br /&gt;
 &lt;br /&gt;
-&#039;&#039;&#039;k&#039;&#039;&#039; (kilobytes) zeigt den freien Platz in Kilobyteblöcken, auch wenn die Umgebungsvariable POSIXLY_CORRECT gesetzt ist &lt;br /&gt;
&lt;br /&gt;
-&#039;&#039;&#039;P&#039;&#039;&#039; (portability) erzwingt die Ausgabe in einer Zeile pro Dateisystem &lt;br /&gt;
&lt;br /&gt;
-&#039;&#039;&#039;t&#039;&#039;&#039; Fstyp (type) schränkt die Ausgabe auf die Dateisysteme vom Typ Fstyp ein &lt;br /&gt;
&lt;br /&gt;
=Beispiele=&lt;br /&gt;
&lt;br /&gt;
df -k&lt;br /&gt;
&lt;br /&gt;
Dateisystem                       1K-Blöcke  Benutzt Verfügbar Verw% Eingehängt auf&lt;br /&gt;
&lt;br /&gt;
udev                                1924164        0   1924164    0% /dev&lt;br /&gt;
&lt;br /&gt;
tmpfs                                387092     5908    381184    2% /run&lt;br /&gt;
&lt;br /&gt;
/dev/sda2                          38186548  5666216  30550824   16% /&lt;br /&gt;
&lt;br /&gt;
tmpfs                               1935444     9176   1926268    1% /dev/shm&lt;br /&gt;
&lt;br /&gt;
tmpfs                                  5120        4      5116    1% /run/lock&lt;br /&gt;
&lt;br /&gt;
tmpfs                               1935444        0   1935444    0% /sys/fs/cgroup&lt;br /&gt;
&lt;br /&gt;
root@fileserver:/home/user/team/   72269904  4609920  63945784    7% /home/user/team&lt;br /&gt;
&lt;br /&gt;
root@backup:/var/cache/rsnapshot/ 475721704 36961056 414525592    9% /home/user/backup&lt;br /&gt;
&lt;br /&gt;
tmpfs                                387088        0    387088    0% /run/user/113&lt;br /&gt;
&lt;br /&gt;
tmpfs                                387088       16    387072    1% /run/user/1000&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
df -i &lt;br /&gt;
&lt;br /&gt;
Dateisystem                         Inodes IBenutzt    IFrei IUse% Eingehängt auf&lt;br /&gt;
&lt;br /&gt;
udev                                481041      396   480645    1% /dev&lt;br /&gt;
&lt;br /&gt;
tmpfs                               483861      556   483305    1% /run&lt;br /&gt;
&lt;br /&gt;
/dev/sda2                          2444624   167656  2276968    7% /&lt;br /&gt;
&lt;br /&gt;
tmpfs                               483861       42   483819    1% /dev/shm&lt;br /&gt;
&lt;br /&gt;
tmpfs                               483861        3   483858    1% /run/lock&lt;br /&gt;
&lt;br /&gt;
tmpfs                               483861       15   483846    1% /sys/fs/cgroup&lt;br /&gt;
&lt;br /&gt;
root@fileserver:/home/user/team/   4628480   158001  4470479    4% /home/user/team&lt;br /&gt;
&lt;br /&gt;
root@backup:/var/cache/rsnapshot/ 30277632   276575 30001057    1% /home/user/backup &lt;br /&gt;
                                                                                              &lt;br /&gt;
tmpfs                               483861       10   483851    1% /run/user/113 &lt;br /&gt;
                                                                                                  &lt;br /&gt;
tmpfs                               483861       20   483841    1% /run/user/1000&lt;br /&gt;
&lt;br /&gt;
[[Category:Linuxbefehle]]&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Linux:LPIC:101]]&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=Df&amp;diff=7192</id>
		<title>Df</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=Df&amp;diff=7192"/>
		<updated>2019-12-04T19:22:10Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Bezeichnung=&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;df&#039;&#039;&#039;  (disk free) zeigt den freien Festplattenplatz&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;df&#039;&#039;&#039;  zeigt den freien Festplattenplatz für das Dateisystem, in dem das Verzeichnis Pfad angesiedelt ist.&lt;br /&gt;
&lt;br /&gt;
=Übersicht=&lt;br /&gt;
&lt;br /&gt;
df[-aikPv] [-t Fstyp] [-all] [-inodes] [-type fstype] [-kilobytes] [-portability] [Pfad ...]&lt;br /&gt;
&lt;br /&gt;
=Optionen=&lt;br /&gt;
&lt;br /&gt;
-&#039;&#039;&#039;a&#039;&#039;&#039; (all) zeigt alle Dateisysteme an, einschließlich der mit 0 Bytes Kapazität und der vom Typ ignore oder auto&lt;br /&gt;
&lt;br /&gt;
-&#039;&#039;&#039;i&#039;&#039;&#039; (inodes) zeigt die Auslastung der Inodes anstelle der Blockauslastung&lt;br /&gt;
 &lt;br /&gt;
-&#039;&#039;&#039;k&#039;&#039;&#039; (kilobytes) zeigt den freien Platz in Kilobyteblöcken, auch wenn die Umgebungsvariable POSIXLY_CORRECT gesetzt ist &lt;br /&gt;
&lt;br /&gt;
-&#039;&#039;&#039;P&#039;&#039;&#039; (portability) erzwingt die Ausgabe in einer Zeile pro Dateisystem &lt;br /&gt;
&lt;br /&gt;
-&#039;&#039;&#039;t&#039;&#039;&#039; Fstyp (type) schränkt die Ausgabe auf die Dateisysteme vom Typ Fstyp ein &lt;br /&gt;
&lt;br /&gt;
=Beispiele=&lt;br /&gt;
&lt;br /&gt;
df -k&lt;br /&gt;
&lt;br /&gt;
Dateisystem                       1K-Blöcke  Benutzt Verfügbar Verw% Eingehängt auf&lt;br /&gt;
&lt;br /&gt;
udev                                1924164        0   1924164    0% /dev&lt;br /&gt;
&lt;br /&gt;
tmpfs                                387092     5908    381184    2% /run&lt;br /&gt;
&lt;br /&gt;
/dev/sda2                          38186548  5666216  30550824   16% /&lt;br /&gt;
&lt;br /&gt;
tmpfs                               1935444     9176   1926268    1% /dev/shm&lt;br /&gt;
&lt;br /&gt;
tmpfs                                  5120        4      5116    1% /run/lock&lt;br /&gt;
&lt;br /&gt;
tmpfs                               1935444        0   1935444    0% /sys/fs/cgroup&lt;br /&gt;
&lt;br /&gt;
root@fileserver:/home/user/team/   72269904  4609920  63945784    7% /home/user/team&lt;br /&gt;
&lt;br /&gt;
root@backup:/var/cache/rsnapshot/ 475721704 36961056 414525592    9% /home/user/backup&lt;br /&gt;
&lt;br /&gt;
tmpfs                                387088        0    387088    0% /run/user/113&lt;br /&gt;
&lt;br /&gt;
tmpfs                                387088       16    387072    1% /run/user/1000&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
df -i &lt;br /&gt;
&lt;br /&gt;
Dateisystem                         Inodes IBenutzt    IFrei IUse% Eingehängt auf&lt;br /&gt;
&lt;br /&gt;
udev                                481041      396   480645    1% /dev&lt;br /&gt;
&lt;br /&gt;
tmpfs                               483861      556   483305    1% /run&lt;br /&gt;
&lt;br /&gt;
/dev/sda2                          2444624   167656  2276968    7% /&lt;br /&gt;
&lt;br /&gt;
tmpfs                               483861       42   483819    1% /dev/shm&lt;br /&gt;
&lt;br /&gt;
tmpfs                               483861        3   483858    1% /run/lock&lt;br /&gt;
&lt;br /&gt;
tmpfs                               483861       15   483846    1% /sys/fs/cgroup&lt;br /&gt;
&lt;br /&gt;
root@fileserver:/home/user/team/   4628480   158001  4470479    4% /home/user/team&lt;br /&gt;
&lt;br /&gt;
root@backup:/var/cache/rsnapshot/ 30277632   276575 30001057    1% /home/user/backup &lt;br /&gt;
                                                                                              &lt;br /&gt;
tmpfs                               483861       10   483851    1% /run/user/113 &lt;br /&gt;
                                                                                                  &lt;br /&gt;
tmpfs                               483861       20   483841    1% /run/user/1000&lt;br /&gt;
&lt;br /&gt;
[[Category:Linuxbefehle]]&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Linux:LPIC:101]]&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=Sudo&amp;diff=7191</id>
		<title>Sudo</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=Sudo&amp;diff=7191"/>
		<updated>2019-12-04T19:20:52Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: Alaa Eldhawibi verschob die Seite Sudo nach Linuxbefehl: sudo, ohne dabei eine Weiterleitung anzulegen&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Der Befehl sudo kann Programmaufrufen vorangestellt werden. Er ermöglicht berechtigten Benutzern, das Programm im Namen und mit den Rechten eines anderen Benutzers auszuführen. Beispielsweise um Aufgaben auszuführen, die Administratoren vorbehalten sind:&lt;br /&gt;
&lt;br /&gt;
    Programme installieren (sudo apt-get install ...)&lt;br /&gt;
&lt;br /&gt;
    Systemkonfigurationen ändern (sudo nano /etc/fstab)&lt;br /&gt;
&lt;br /&gt;
Der Linux-Befehl sudo ermöglicht einem Benutzer, einen Befehl als Superuser oder als ein anderer Benutzer auszuführen. sudo erfordert die Angabe eines Passworts. Dies ist normalerweise das Benutzerpasswort, nicht das Root-Passwort&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Konfiguration&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Benutzung&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Category:Linuxbefehle]]&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Linux:LPIC:101]]&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=Sudo&amp;diff=7190</id>
		<title>Sudo</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=Sudo&amp;diff=7190"/>
		<updated>2019-12-04T19:20:32Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Der Befehl sudo kann Programmaufrufen vorangestellt werden. Er ermöglicht berechtigten Benutzern, das Programm im Namen und mit den Rechten eines anderen Benutzers auszuführen. Beispielsweise um Aufgaben auszuführen, die Administratoren vorbehalten sind:&lt;br /&gt;
&lt;br /&gt;
    Programme installieren (sudo apt-get install ...)&lt;br /&gt;
&lt;br /&gt;
    Systemkonfigurationen ändern (sudo nano /etc/fstab)&lt;br /&gt;
&lt;br /&gt;
Der Linux-Befehl sudo ermöglicht einem Benutzer, einen Befehl als Superuser oder als ein anderer Benutzer auszuführen. sudo erfordert die Angabe eines Passworts. Dies ist normalerweise das Benutzerpasswort, nicht das Root-Passwort&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Konfiguration&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Benutzung&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Category:Linuxbefehle]]&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Linux:LPIC:101]]&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=Ps&amp;diff=7189</id>
		<title>Ps</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=Ps&amp;diff=7189"/>
		<updated>2019-12-04T19:19:22Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;processes liefert eine Momentaufnahme der laufenden Prozesse. Wenn eine ständige Aktualisierung der Prozessliste gewünscht ist, so ist top zu verwenden. Mit pgrep lassen sich Prozesse gezielt über den Namen oder eines regulären Ausdrucks suchen und mit pstree kann man alle laufenden Prozesse in Baumform anzeigen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Linuxbefehle]]&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Linux:LPIC:101]]&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=LPIC101/103.6_Prozess-Ausf%C3%BChrungspriorit%C3%A4ten_%C3%A4ndern&amp;diff=7188</id>
		<title>LPIC101/103.6 Prozess-Ausführungsprioritäten ändern</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=LPIC101/103.6_Prozess-Ausf%C3%BChrungspriorit%C3%A4ten_%C3%A4ndern&amp;diff=7188"/>
		<updated>2019-12-04T18:52:47Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: /* Liste wichtiger Dateien */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Allgemeines =&lt;br /&gt;
*Der Begriff Prozeß (engl. process) bezeichnet ein Programm, das gerade geladen ist und (meist) läuft. &lt;br /&gt;
* Manchmal möchten Sie die Priorität eines Prozesses ändern. Ein Prozess, der für Sie sehr wichtig ist, kann z.B. ausgeführt werden und sie möchten Ihn schnell beenden. &lt;br /&gt;
* Ein  normaler Benutzer kann  allerdings  einem Prozess  lediglich  eine  niedrigere  Priorität  zuordnen.  &lt;br /&gt;
* Damit soll  verhindert  werden,  dass  Benutzer,  die  ihre  eigene  Arbeit  als  besonders  wichtig einstufen, das ganze System lahmlegen.&lt;br /&gt;
&lt;br /&gt;
= Liste wichtiger Dateien =&lt;br /&gt;
&lt;br /&gt;
* [[Linuxbefehl: nice|nice]]&lt;br /&gt;
* [[Linuxbefehl: ps|ps]]&lt;br /&gt;
* renice&lt;br /&gt;
* [[Linuxbefehl: top|top]]&lt;br /&gt;
&lt;br /&gt;
==nice==&lt;br /&gt;
&lt;br /&gt;
*nice ist ein Befehl von Unix-ähnlichen Betriebssystemen.&lt;br /&gt;
*Mit nice ist es möglich, ein Kommando mit einer bestimmten Priorität zu starten, sodass der dann ausgeführte Prozess im Gegensatz zu anderen Prozessen mehr oder weniger CPU-Zeit erhält.&lt;br /&gt;
&lt;br /&gt;
Zum Beispiel haben wir den folgenden Prozess ausgeführt:&lt;br /&gt;
 sleep 1000000000&amp;amp;&lt;br /&gt;
&lt;br /&gt;
Und bestätigte die Priorität mit dem folgenden Befehl:&lt;br /&gt;
 ps ax -o pid,ni,cmd | grep sleep&lt;br /&gt;
 2268   0sleep 1000000000&lt;br /&gt;
 2271   0 grep sleep&lt;br /&gt;
 michel@debian:~$ nice -n 10 sleep 1000000000&amp;amp;&lt;br /&gt;
&lt;br /&gt;
*In beiden Fällen wird der Editor nano mit einem positiven Nice-Wert von 10 gestartet.&lt;br /&gt;
*Der Strich in der zweiten Zeile ist also kein Minus, sondern dient der Einleitung der Option.&lt;br /&gt;
*Wenn  Sie  einen  negativen  Nice-Wert  verwenden  wollen,  um  die  Ausführungspriorität eines Programms zu erhöhen, können Sie folgende Kommandos verwenden:&lt;br /&gt;
 michel@debian:~$ nice -n -10 sleep 1000000000&amp;amp; oder:&lt;br /&gt;
 michel@debian:~$ nice --10 sleep 1000000000&amp;amp;&lt;br /&gt;
&lt;br /&gt;
Mit dem Kommando:&lt;br /&gt;
 michel@debian:~$ ps ax -o pid,ni,cmd | grep sleep&lt;br /&gt;
sieht man ,dass das Prioritäts-Scheduling auf die zweite Spalte. In die erste Spalte steht die auführungsnummer(zum beispiel  2268) des Prozesses.&lt;br /&gt;
 2268 -10 sleep 1000000000&lt;br /&gt;
 2271   0 grep sleep&lt;br /&gt;
Die zweite Zeile enthält jetzt zwei Striche. Der erste Strich leitet die Option ein, und der zweite ist diesmal ein Minuszeichen.&lt;br /&gt;
&lt;br /&gt;
==renice== &lt;br /&gt;
&lt;br /&gt;
*renice ändert das Prioritäts-Scheduling eines oder mehrerer laufender Prozesse.&lt;br /&gt;
*Das erste Argument ist der zu verwendende Prioritäts-Wert.&lt;br /&gt;
*Die anderen Argumente werden als Prozesskennungen interpretiert (Vorgabe), Prozessgruppenkennungen, Benutzerkennungen oder Benutzernamen.&lt;br /&gt;
*Das Anwenden von renice auf eine Prozessgruppe beeinflusst das Scheduling aller Prozesse in dieser Prozessgruppe gleichermaßen.&lt;br /&gt;
*Das Anwenden von renice auf einen Benutzer ändert das Prioritäts-Scheduling aller Prozesse, die diesem Benutzer gehören.&lt;br /&gt;
 root@debian:~#  renice -n -7 2268&lt;br /&gt;
 2268(process ID) old priority -10, new priority -7&lt;br /&gt;
*Hier ist also der Strich ein Minus und keine Einleitung für eine Option.&lt;br /&gt;
*Mit der Option -u (hier wiederum ist der Strich unabdingbar) können Sie alle Prozesseeines einzelnen Benutzers gleichzeitig beeinflussen.&lt;br /&gt;
*Die Syntax ist ansonsten mit identisch, die man auch bei der Manipulation eines Prozesses benutzen würde.&lt;br /&gt;
&lt;br /&gt;
==top und ps==&lt;br /&gt;
&lt;br /&gt;
top und ps können die prioritäten überprüfen:&lt;br /&gt;
*[[Linuxbefehl: ps|ps]] (für process status) ist ein Unix-Kommando, das eine Liste aller Prozesse, welche momentan laufen oder sich im Zombie-Status befinden, auf dem Bildschirm ausgibt.&lt;br /&gt;
 michel@debian:~$ ps ax -o pid,ni,cmd | grep sleep&lt;br /&gt;
*[[top]] ist ein Befehl in den meisten Unix-ähnlichen Betriebssystemen, der eine ständig aktualisierte Liste der aktuell laufenden Prozesse des Systems ausgibt.&lt;br /&gt;
*Dabei zeigt top auch die Load der CPU, Speicherverbrauch, sowie etliche andere Informationen an,Um  die  tatsächliche  Priorität  eines  Prozesses  und  den  Wert  für nice zu  ermitteln,benötigen Sie das Programm top.&lt;br /&gt;
&lt;br /&gt;
=Kontrollfragen=&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Sie planen apt-get upgrade auszuführen,  um  Ihr  System  auf  den  neuesten  Stand  zu bringen.  Da  dieses  Kommando  erfahrungsgemäß eine hohe  Systemlast  verursacht,wollen Sie ihm eine geringere Prozesspriorität zuweisen.Welchen Befehl werden Sie apt-get voranstellen, damit andere Prozesse durch die Aktualisierung nicht negativ beeinflusst werden? (Wählen Sie zwei Antworten.)&lt;br /&gt;
# A: nice-14&lt;br /&gt;
# B: nice-n14&lt;br /&gt;
# C: renice-n14&lt;br /&gt;
# D: nice-n-14&lt;br /&gt;
# E: nice--14&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;A,B&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Sie stellen fest, dass das System, an dem Sie arbeiten, sehr träge reagiert. Eine Über-prüfung ergibt, dass ein&lt;br /&gt;
Backupskript einen  großen  Teil  der  Systemressourcen  verbraucht.Die zugehörige Prozess-ID  ist 8490. Welches  Kommando  können Sie verwenden, um die Ausführungspriorität der Datensicherung im laufenden Betrieb zu senken&lt;br /&gt;
# A: nice--12 8490&lt;br /&gt;
# B: bg&lt;br /&gt;
# C: renice-n15 8490&lt;br /&gt;
# D: renice-15 8490&lt;br /&gt;
# E: nice-n12 8490&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;C&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Welche  der  folgenden  Programme  können Einfluss  auf  die  Ausführungspriorität eines Prozesses nehmen? (Wählen Sie drei Programme aus. &lt;br /&gt;
# A: bg&lt;br /&gt;
# B: nice&lt;br /&gt;
# C: renice&lt;br /&gt;
# D: fg&lt;br /&gt;
# E: top&lt;br /&gt;
&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;B,C,E&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Was ist der maximale niceness Wert, den ein regulärer Benutzer einem Prozess mit dem Befehl nice zuweisen kann, wenn er einen neuen Prozess ausführt? &lt;br /&gt;
#A: 9&lt;br /&gt;
#B: 19&lt;br /&gt;
#C: 49&lt;br /&gt;
#D: 99&lt;br /&gt;
&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;B&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Linux:LPIC:101]]&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=Top&amp;diff=7187</id>
		<title>Top</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=Top&amp;diff=7187"/>
		<updated>2019-12-04T18:51:31Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Der Befehl top zeigt eine dynamische Übersicht der auf dem System laufenden Prozesse und die Systemressourcen an. Das Kommandozeilenprogramm ist ein Klassiker, wenn man einen schnellen Überblick benötigt, womit das System gerade beschäftigt ist.&lt;br /&gt;
&lt;br /&gt;
htop ist eine interessante Alternative zu top, die allerdings erst nachinstalliert werden muss. Es ist sehr ähnlich, besitzt aber eine auf ncurses aufbauende Textoberfläche. Es erlaubt horizontales und vertikales Scrollen sowie die Manipulation von Prozessen über die Funktionstasten. Zudem bietet es weitere Komfortfunktionen. Für ein Systemmonitoring mit Echtzeit-Statistiken kann man Glances nutzen.&lt;br /&gt;
&lt;br /&gt;
top ist ein Befehl in den meisten Unix-ähnlichen Betriebssystemen, der eine ständig aktualisierte Liste der aktuell laufenden Prozesse des Systems ausgibt. Dabei zeigt top auch die Load der CPU, Speicherverbrauch, sowie etliche andere Informationen an. Einige Versionen von top lassen sich sehr flexibel konfigurieren, was die anzuzeigenden Informationen betrifft.&lt;br /&gt;
&lt;br /&gt;
Der Befehl ist unter anderem für Systemadministratoren sehr nützlich, da er einen Überblick gibt, welche Benutzer und Prozesse das System am meisten belasten. Zur weiteren Verarbeitung durch eine Skriptsprache oder zur Aufzeichnung lässt sich die Ausgabe von top auch in eine Textdatei umleiten.&lt;br /&gt;
&lt;br /&gt;
Gegenüber dem Befehl zum einmaligen Auflisten von Prozessen, ps, bietet die ständige Aktualisierung von top den Vorteil, dass der Befehl nicht ständig neu gestartet werden muss, um auf dem aktuellen Stand zu bleiben. Außerdem zeigt top nur so viele Prozesse an, wie in das Terminalfenster passen. Dadurch werden (standardmäßig) nur die am meisten belastenden Prozesse angezeigt.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Option !! Beschreibung&lt;br /&gt;
|-&lt;br /&gt;
| -b ||Startet top im &amp;quot;Batch&amp;quot;-Modus. Tastatureingaben werden ignoriert und die Ausgabe ist frei von Terminal-Kontroll-Sequenzen. &lt;br /&gt;
Praktisch um die Ausgabe von top z.B. in eine Datei zu leiten&lt;br /&gt;
|-&lt;br /&gt;
| -c ||Zeigt das vollständige Kommando inklusive Pfadangaben an&lt;br /&gt;
|-&lt;br /&gt;
| -d ss.tt || Wiederholrate in Sekunden * 1/100 Sekunden&lt;br /&gt;
|-&lt;br /&gt;
| -i ||Prozesse, die den Status &amp;quot;idle&amp;quot; besitzen, die also ruhen, werden nicht angezeigt&lt;br /&gt;
|-&lt;br /&gt;
| -n ANZAHL || Beschränkt die Ausgabe auf die angegebene Zahl von Iterationen.&lt;br /&gt;
|-&lt;br /&gt;
| -u BENUTZERNAME bzw. UID || Zeigt nur die Prozesse des entsprechenden Benutzers an&lt;br /&gt;
|-&lt;br /&gt;
| -p PID1 -p PID2 ... || Zeigt nur Prozesse mit den angegeben Prozess-IDs an&lt;br /&gt;
|-&lt;br /&gt;
| -S || Zeigt die absolute Zeit an, seit der Prozess gestartet wurde&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Category:Linuxbefehle]]&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Linux:LPIC:101]]&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=LPIC101/103.6_Prozess-Ausf%C3%BChrungspriorit%C3%A4ten_%C3%A4ndern&amp;diff=7185</id>
		<title>LPIC101/103.6 Prozess-Ausführungsprioritäten ändern</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=LPIC101/103.6_Prozess-Ausf%C3%BChrungspriorit%C3%A4ten_%C3%A4ndern&amp;diff=7185"/>
		<updated>2019-12-04T18:46:23Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: /* Liste wichtiger Dateien */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Allgemeines =&lt;br /&gt;
*Der Begriff Prozeß (engl. process) bezeichnet ein Programm, das gerade geladen ist und (meist) läuft. &lt;br /&gt;
* Manchmal möchten Sie die Priorität eines Prozesses ändern. Ein Prozess, der für Sie sehr wichtig ist, kann z.B. ausgeführt werden und sie möchten Ihn schnell beenden. &lt;br /&gt;
* Ein  normaler Benutzer kann  allerdings  einem Prozess  lediglich  eine  niedrigere  Priorität  zuordnen.  &lt;br /&gt;
* Damit soll  verhindert  werden,  dass  Benutzer,  die  ihre  eigene  Arbeit  als  besonders  wichtig einstufen, das ganze System lahmlegen.&lt;br /&gt;
&lt;br /&gt;
= Liste wichtiger Dateien =&lt;br /&gt;
&lt;br /&gt;
* [[Linuxbefehl: nice|nice]]&lt;br /&gt;
* [[Linuxbefehl: ps|ps]]&lt;br /&gt;
* renice&lt;br /&gt;
* [[top]]&lt;br /&gt;
&lt;br /&gt;
==nice==&lt;br /&gt;
&lt;br /&gt;
*nice ist ein Befehl von Unix-ähnlichen Betriebssystemen.&lt;br /&gt;
*Mit nice ist es möglich, ein Kommando mit einer bestimmten Priorität zu starten, sodass der dann ausgeführte Prozess im Gegensatz zu anderen Prozessen mehr oder weniger CPU-Zeit erhält.&lt;br /&gt;
&lt;br /&gt;
Zum Beispiel haben wir den folgenden Prozess ausgeführt:&lt;br /&gt;
 sleep 1000000000&amp;amp;&lt;br /&gt;
&lt;br /&gt;
Und bestätigte die Priorität mit dem folgenden Befehl:&lt;br /&gt;
 ps ax -o pid,ni,cmd | grep sleep&lt;br /&gt;
 2268   0sleep 1000000000&lt;br /&gt;
 2271   0 grep sleep&lt;br /&gt;
 michel@debian:~$ nice -n 10 sleep 1000000000&amp;amp;&lt;br /&gt;
&lt;br /&gt;
*In beiden Fällen wird der Editor nano mit einem positiven Nice-Wert von 10 gestartet.&lt;br /&gt;
*Der Strich in der zweiten Zeile ist also kein Minus, sondern dient der Einleitung der Option.&lt;br /&gt;
*Wenn  Sie  einen  negativen  Nice-Wert  verwenden  wollen,  um  die  Ausführungspriorität eines Programms zu erhöhen, können Sie folgende Kommandos verwenden:&lt;br /&gt;
 michel@debian:~$ nice -n -10 sleep 1000000000&amp;amp; oder:&lt;br /&gt;
 michel@debian:~$ nice --10 sleep 1000000000&amp;amp;&lt;br /&gt;
&lt;br /&gt;
Mit dem Kommando:&lt;br /&gt;
 michel@debian:~$ ps ax -o pid,ni,cmd | grep sleep&lt;br /&gt;
sieht man ,dass das Prioritäts-Scheduling auf die zweite Spalte. In die erste Spalte steht die auführungsnummer(zum beispiel  2268) des Prozesses.&lt;br /&gt;
 2268 -10 sleep 1000000000&lt;br /&gt;
 2271   0 grep sleep&lt;br /&gt;
Die zweite Zeile enthält jetzt zwei Striche. Der erste Strich leitet die Option ein, und der zweite ist diesmal ein Minuszeichen.&lt;br /&gt;
&lt;br /&gt;
==renice== &lt;br /&gt;
&lt;br /&gt;
*renice ändert das Prioritäts-Scheduling eines oder mehrerer laufender Prozesse.&lt;br /&gt;
*Das erste Argument ist der zu verwendende Prioritäts-Wert.&lt;br /&gt;
*Die anderen Argumente werden als Prozesskennungen interpretiert (Vorgabe), Prozessgruppenkennungen, Benutzerkennungen oder Benutzernamen.&lt;br /&gt;
*Das Anwenden von renice auf eine Prozessgruppe beeinflusst das Scheduling aller Prozesse in dieser Prozessgruppe gleichermaßen.&lt;br /&gt;
*Das Anwenden von renice auf einen Benutzer ändert das Prioritäts-Scheduling aller Prozesse, die diesem Benutzer gehören.&lt;br /&gt;
 root@debian:~#  renice -n -7 2268&lt;br /&gt;
 2268(process ID) old priority -10, new priority -7&lt;br /&gt;
*Hier ist also der Strich ein Minus und keine Einleitung für eine Option.&lt;br /&gt;
*Mit der Option -u (hier wiederum ist der Strich unabdingbar) können Sie alle Prozesseeines einzelnen Benutzers gleichzeitig beeinflussen.&lt;br /&gt;
*Die Syntax ist ansonsten mit identisch, die man auch bei der Manipulation eines Prozesses benutzen würde.&lt;br /&gt;
&lt;br /&gt;
==top und ps==&lt;br /&gt;
&lt;br /&gt;
top und ps können die prioritäten überprüfen:&lt;br /&gt;
*[[Linuxbefehl: ps|ps]] (für process status) ist ein Unix-Kommando, das eine Liste aller Prozesse, welche momentan laufen oder sich im Zombie-Status befinden, auf dem Bildschirm ausgibt.&lt;br /&gt;
 michel@debian:~$ ps ax -o pid,ni,cmd | grep sleep&lt;br /&gt;
*[[top]] ist ein Befehl in den meisten Unix-ähnlichen Betriebssystemen, der eine ständig aktualisierte Liste der aktuell laufenden Prozesse des Systems ausgibt.&lt;br /&gt;
*Dabei zeigt top auch die Load der CPU, Speicherverbrauch, sowie etliche andere Informationen an,Um  die  tatsächliche  Priorität  eines  Prozesses  und  den  Wert  für nice zu  ermitteln,benötigen Sie das Programm top.&lt;br /&gt;
&lt;br /&gt;
=Kontrollfragen=&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Sie planen apt-get upgrade auszuführen,  um  Ihr  System  auf  den  neuesten  Stand  zu bringen.  Da  dieses  Kommando  erfahrungsgemäß eine hohe  Systemlast  verursacht,wollen Sie ihm eine geringere Prozesspriorität zuweisen.Welchen Befehl werden Sie apt-get voranstellen, damit andere Prozesse durch die Aktualisierung nicht negativ beeinflusst werden? (Wählen Sie zwei Antworten.)&lt;br /&gt;
# A: nice-14&lt;br /&gt;
# B: nice-n14&lt;br /&gt;
# C: renice-n14&lt;br /&gt;
# D: nice-n-14&lt;br /&gt;
# E: nice--14&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;A,B&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Sie stellen fest, dass das System, an dem Sie arbeiten, sehr träge reagiert. Eine Über-prüfung ergibt, dass ein&lt;br /&gt;
Backupskript einen  großen  Teil  der  Systemressourcen  verbraucht.Die zugehörige Prozess-ID  ist 8490. Welches  Kommando  können Sie verwenden, um die Ausführungspriorität der Datensicherung im laufenden Betrieb zu senken&lt;br /&gt;
# A: nice--12 8490&lt;br /&gt;
# B: bg&lt;br /&gt;
# C: renice-n15 8490&lt;br /&gt;
# D: renice-15 8490&lt;br /&gt;
# E: nice-n12 8490&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;C&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Welche  der  folgenden  Programme  können Einfluss  auf  die  Ausführungspriorität eines Prozesses nehmen? (Wählen Sie drei Programme aus. &lt;br /&gt;
# A: bg&lt;br /&gt;
# B: nice&lt;br /&gt;
# C: renice&lt;br /&gt;
# D: fg&lt;br /&gt;
# E: top&lt;br /&gt;
&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;B,C,E&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Was ist der maximale niceness Wert, den ein regulärer Benutzer einem Prozess mit dem Befehl nice zuweisen kann, wenn er einen neuen Prozess ausführt? &lt;br /&gt;
#A: 9&lt;br /&gt;
#B: 19&lt;br /&gt;
#C: 49&lt;br /&gt;
#D: 99&lt;br /&gt;
&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;B&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Linux:LPIC:101]]&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=Nice&amp;diff=7184</id>
		<title>Nice</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=Nice&amp;diff=7184"/>
		<updated>2019-12-04T18:46:10Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: Alaa Eldhawibi verschob die Seite Nice nach Linuxbefehl: nice, ohne dabei eine Weiterleitung anzulegen&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;nice ist ein Befehl von Unix-ähnlichen Betriebssystemen, darunter auch Linux. Das Programm wird direkt auf einen Systemaufruf abgebildet. Mit nice ist es möglich, ein Kommando mit einer bestimmten Priorität zu starten, sodass der dann ausgeführte Prozess im Gegensatz zu anderen Prozessen mehr oder weniger CPU-Zeit erhält. Der nice-Wert wird als Ganzzahl angegeben und erstreckt sich von −20 bis +19: hierbei ist −20 die höchste Priorität und +19 die geringste. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der Wert ist standardmässig 0 und beschreibt eine statische Priorität für jeden Thread. Bei der Übergabe von Optionen erwartet nice immer einen vorangestellten Bindestrich. Wenn ein Programm mit einem positiven Nice-Wert gestartet werden soll,stehen Ihnen zwei Möglichkeiten zur Ausführung des Kommandos zur Verfügung.&lt;br /&gt;
&lt;br /&gt;
[[Category:Linuxbefehle]]&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Linux:LPIC:101]]&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=Nice&amp;diff=7183</id>
		<title>Nice</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=Nice&amp;diff=7183"/>
		<updated>2019-12-04T18:44:44Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;nice ist ein Befehl von Unix-ähnlichen Betriebssystemen, darunter auch Linux. Das Programm wird direkt auf einen Systemaufruf abgebildet. Mit nice ist es möglich, ein Kommando mit einer bestimmten Priorität zu starten, sodass der dann ausgeführte Prozess im Gegensatz zu anderen Prozessen mehr oder weniger CPU-Zeit erhält. Der nice-Wert wird als Ganzzahl angegeben und erstreckt sich von −20 bis +19: hierbei ist −20 die höchste Priorität und +19 die geringste. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der Wert ist standardmässig 0 und beschreibt eine statische Priorität für jeden Thread. Bei der Übergabe von Optionen erwartet nice immer einen vorangestellten Bindestrich. Wenn ein Programm mit einem positiven Nice-Wert gestartet werden soll,stehen Ihnen zwei Möglichkeiten zur Ausführung des Kommandos zur Verfügung.&lt;br /&gt;
&lt;br /&gt;
[[Category:Linuxbefehle]]&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Linux:LPIC:101]]&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=Rmdir&amp;diff=7182</id>
		<title>Rmdir</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=Rmdir&amp;diff=7182"/>
		<updated>2019-12-04T18:39:24Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: Alaa Eldhawibi verschob die Seite Rmdir nach Linuxbefehl: rmdir, ohne dabei eine Weiterleitung anzulegen&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Bezeichnung=&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;rmdir&#039;&#039;&#039; — Remove empty directories&lt;br /&gt;
&lt;br /&gt;
rmdir löscht leere Verzeichnisse. Verzeichnisse in dem sich noch Daten befinden werden nicht gelöscht.&lt;br /&gt;
&lt;br /&gt;
=Übersicht=&lt;br /&gt;
rmdir [Option] leere-Verzeichniss&lt;br /&gt;
&lt;br /&gt;
=Option=&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;-v&#039;&#039;&#039;	Steht für „verbose“ und Zeigt alles an was der Befehl rmdir gerade macht.&lt;br /&gt;
&lt;br /&gt;
=Beispiel= 	&lt;br /&gt;
&lt;br /&gt;
 rmdir /temp/test: Löscht den Ordner „Test“ aus dem Verzeichnis „/tmp“&lt;br /&gt;
[[Category:Linuxbefehle]]&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Linux:LPIC:101]]&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=Touch&amp;diff=7181</id>
		<title>Touch</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=Touch&amp;diff=7181"/>
		<updated>2019-12-04T18:38:09Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: Alaa Eldhawibi verschob die Seite Touch nach Linuxbefehl: touch, ohne dabei eine Weiterleitung anzulegen&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Bezeichnung=&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;touch&#039;&#039;&#039; : Zeitstempel von Dateien ändern&lt;br /&gt;
&lt;br /&gt;
=Übersicht=&lt;br /&gt;
 &lt;br /&gt;
touch [OPTION]... DATEI...&lt;br /&gt;
&lt;br /&gt;
=Option=&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Option !! Beschreibung&lt;br /&gt;
|-&lt;br /&gt;
| --help || Hilfe (eine erweitere Hilfe liefert der Befehl info touch).&lt;br /&gt;
|-&lt;br /&gt;
|  -a  ||  	Modifikation des Zugriffszeitstempels der Datei.&lt;br /&gt;
|-&lt;br /&gt;
| -c oder --no-create] || (Wenn keine Datei vorhanden ist:) Keine Datei erstellen.&lt;br /&gt;
|-&lt;br /&gt;
| -d oder --date=DATUM  || Verwendung von Datum oder STRING statt der augenblicklichen Zeit (siehe auch -t).&lt;br /&gt;
|-&lt;br /&gt;
| -h oder --no-dereference  || Modifikation des Zeitstempels symbolischer Links, nicht der verlinkten Datei.&lt;br /&gt;
|-&lt;br /&gt;
| -m 	 || Modifikation des Änderungszeitstempels der Datei.&lt;br /&gt;
|-&lt;br /&gt;
| -r oder --reference=FILE || Verwendung der Zeitstempel der angegebenen Datei statt der augenblicklichen Zeit.&lt;br /&gt;
|-&lt;br /&gt;
| -t ZEITSTEMPEL || Verwendung von [JJ]MMTThhmm[.ss] statt der augenblicklichen Zeit .&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Linuxbefehle]]&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Linux:LPIC:101]]&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=Man&amp;diff=7180</id>
		<title>Man</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=Man&amp;diff=7180"/>
		<updated>2019-12-04T18:37:39Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Manpages=&lt;br /&gt;
*Manpages sind ein komfortabel zu benutzendes Hilfesystem und stehen für fast alle Linux-Befehle zur Verfügung&amp;lt;br&amp;gt;&lt;br /&gt;
*Geben Sie einfach den Befehl &amp;lt;code&amp;gt;man&amp;lt;/code&amp;gt;, gefolgt von dem zu erklärenden Befehl, auf der Kommandozeile ein, und schon erhalten Sie eine genaue Beschreibung.&lt;br /&gt;
=Funktionsweise der Manpages=&lt;br /&gt;
*Immer wenn Sie eine Manpage aufrufen, konsultiert das Programm &#039;&#039;man&#039;&#039; die in der Variablen &#039;&#039;$MANPATH&#039;&#039; enthaltenen Verzeichnisse. Hier können mehrere Verzeichnisse auf einmal hinterlegt sein&amp;lt;br&amp;gt; &lt;br /&gt;
*In nach Sektionen unterteilten Unterverzeichnissenbefinden sich die Dateien der Manpages im komprimierten Zustand&amp;lt;br&amp;gt;&lt;br /&gt;
*Das Mansystem dekomprimiert die angeforderte Datei und übergibt sie anschließend an einen Pager. Dieser zeigt daraufhin die gewünschte Manpage an.&lt;br /&gt;
=$MANPATH und die Datei manpath.config=&lt;br /&gt;
*Wie bereits erwähnt, enthält die Variable &amp;lt;code&amp;gt;$MANPATH&amp;lt;/code&amp;gt; Informationen darüber, wo sich die Manpages überhaupt befinden&amp;lt;br&amp;gt;&lt;br /&gt;
*Genauere Informationen darüber erhalten Sie in der Konfigurationsdatei &#039;&#039;/etc/manpath.config.&#039;&#039; Wenn dem System neue Manpages hinzugefügt werden, wird diese Datei normalerweise bei Bedarf auch automatisch aktualisiert&amp;lt;br&amp;gt;&lt;br /&gt;
*Ein manueller Eingriff ist in der Regel nicht nötig. Um den aktuellen MANPATH zu ermitteln, geben Sie einfach das Kommando &amp;lt;code&amp;gt;manpath&amp;lt;/code&amp;gt; ohne Parameter ein. Das Ergebnis sieht dann beispielsweise so aus:&lt;br /&gt;
 archangel:/ # manpath&lt;br /&gt;
 /usr/share/man:/usr/local/man:/usr/X11R6/man:/opt/gnome/share/man&lt;br /&gt;
*Ein weiterer wichtiger Pfad ist der, in dem das Mansystem seine Temporärdateien ablegt. Wie bereits erwähnt, sind Manpages im Rohformat komprimiert. Deshalb werden sie vor dem Anzeigen in ein temporäres Verzeichnis dekomprimiert&amp;lt;br&amp;gt;&lt;br /&gt;
*In der Regel handelt es sich hierbei um das Verzeichnis &#039;&#039;/var/cache/man.&#039;&#039; Dieses Verzeichnis wird, gestützt durch den Daemon cron, zyklisch von catman bereinigt&amp;lt;br&amp;gt;&lt;br /&gt;
*Um das Cache-Verzeichnis Ihres Computers ausfindig zu machen, geben Sie das Kommando &amp;lt;code&amp;gt;manpath -c&amp;lt;/code&amp;gt; ein:&lt;br /&gt;
 archangel:/ # manpath -c&lt;br /&gt;
 /var/cache/man:/var/cache/man/local:/var/cache/man/opt&lt;br /&gt;
=Die Sektionen des Mansystems=&lt;br /&gt;
Das Mansystem ist in mehrere Sektionen unterteilt. Diese Sektionen sind folgendermaßen gegliedert:&lt;br /&gt;
*ausführbare Programme für Benutzer&lt;br /&gt;
*Systemaufrufe (Funktionen, die durch den Kernel unterstützt werden)&lt;br /&gt;
*Bibliothekaufrufe (Libraries)&lt;br /&gt;
*besondere Dateien (normalerweise in &#039;&#039;/dev&#039;&#039;)&lt;br /&gt;
*Dateiformate und Konventionen&lt;br /&gt;
*Spiele&lt;br /&gt;
*Sonstiges (Makro-Pakete und Konventionen)&lt;br /&gt;
*administrative Programme (nur für den User root)&lt;br /&gt;
*Kernel-Routinen (nicht standardisiert)&lt;br /&gt;
=Aufbau von Manpages=&lt;br /&gt;
Der Aufbau einer Manpage ist festgelegt und sollte immer die folgenden Elemente enthalten:&lt;br /&gt;
*&#039;&#039;Name&#039;&#039; – die Bezeichnung des Elements mit einer kurzen Beschreibung&lt;br /&gt;
*&#039;&#039;Synopsis&#039;&#039; – eine vollständige Kurzbeschreibung der Syntax&lt;br /&gt;
*&#039;&#039;Description&#039;&#039; – eine ausführliche Beschreibung des Elements&lt;br /&gt;
*&#039;&#039;Defaults&#039;&#039; – voreingestellte Parameter&lt;br /&gt;
*&#039;&#039;Overview&#039;&#039; – ein Überblick über die komplexeren Zusammenhänge&lt;br /&gt;
*&#039;&#039;Options&#039;&#039; – Optionen und deren Beschreibung&lt;br /&gt;
*&#039;&#039;Return Values&#039;&#039; – Informationen über eventuelle Rückgabewerte, teilweise auch als Exit-Status bezeichnet&lt;br /&gt;
*&#039;&#039;See also&#039;&#039; – Verweise auf artverwandte Themen&lt;br /&gt;
*&#039;&#039;Bugs&#039;&#039; – bekannte Fehler&lt;br /&gt;
*&#039;&#039;Files&#039;&#039; – Konfigurationsdateien u. Ä.&lt;br /&gt;
Es sind noch mehr Elemente denkbar, aber die hier aufgeführten sind die wohl geläufigsten.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Linuxbefehle]]&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Linux:LPIC:101]]&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=Man&amp;diff=7179</id>
		<title>Man</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=Man&amp;diff=7179"/>
		<updated>2019-12-04T18:36:27Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: Alaa Eldhawibi verschob die Seite Man nach Linuxbefehl: man, ohne dabei eine Weiterleitung anzulegen&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Manpages=&lt;br /&gt;
*Manpages sind ein komfortabel zu benutzendes Hilfesystem und stehen für fast alle Linux-Befehle zur Verfügung&amp;lt;br&amp;gt;&lt;br /&gt;
*Geben Sie einfach den Befehl &amp;lt;code&amp;gt;man&amp;lt;/code&amp;gt;, gefolgt von dem zu erklärenden Befehl, auf der Kommandozeile ein, und schon erhalten Sie eine genaue Beschreibung.&lt;br /&gt;
=Funktionsweise der Manpages=&lt;br /&gt;
*Immer wenn Sie eine Manpage aufrufen, konsultiert das Programm &#039;&#039;man&#039;&#039; die in der Variablen &#039;&#039;$MANPATH&#039;&#039; enthaltenen Verzeichnisse. Hier können mehrere Verzeichnisse auf einmal hinterlegt sein&amp;lt;br&amp;gt; &lt;br /&gt;
*In nach Sektionen unterteilten Unterverzeichnissenbefinden sich die Dateien der Manpages im komprimierten Zustand&amp;lt;br&amp;gt;&lt;br /&gt;
*Das Mansystem dekomprimiert die angeforderte Datei und übergibt sie anschließend an einen Pager. Dieser zeigt daraufhin die gewünschte Manpage an.&lt;br /&gt;
=$MANPATH und die Datei manpath.config=&lt;br /&gt;
*Wie bereits erwähnt, enthält die Variable &amp;lt;code&amp;gt;$MANPATH&amp;lt;/code&amp;gt; Informationen darüber, wo sich die Manpages überhaupt befinden&amp;lt;br&amp;gt;&lt;br /&gt;
*Genauere Informationen darüber erhalten Sie in der Konfigurationsdatei &#039;&#039;/etc/manpath.config.&#039;&#039; Wenn dem System neue Manpages hinzugefügt werden, wird diese Datei normalerweise bei Bedarf auch automatisch aktualisiert&amp;lt;br&amp;gt;&lt;br /&gt;
*Ein manueller Eingriff ist in der Regel nicht nötig. Um den aktuellen MANPATH zu ermitteln, geben Sie einfach das Kommando &amp;lt;code&amp;gt;manpath&amp;lt;/code&amp;gt; ohne Parameter ein. Das Ergebnis sieht dann beispielsweise so aus:&lt;br /&gt;
 archangel:/ # manpath&lt;br /&gt;
 /usr/share/man:/usr/local/man:/usr/X11R6/man:/opt/gnome/share/man&lt;br /&gt;
*Ein weiterer wichtiger Pfad ist der, in dem das Mansystem seine Temporärdateien ablegt. Wie bereits erwähnt, sind Manpages im Rohformat komprimiert. Deshalb werden sie vor dem Anzeigen in ein temporäres Verzeichnis dekomprimiert&amp;lt;br&amp;gt;&lt;br /&gt;
*In der Regel handelt es sich hierbei um das Verzeichnis &#039;&#039;/var/cache/man.&#039;&#039; Dieses Verzeichnis wird, gestützt durch den Daemon cron, zyklisch von catman bereinigt&amp;lt;br&amp;gt;&lt;br /&gt;
*Um das Cache-Verzeichnis Ihres Computers ausfindig zu machen, geben Sie das Kommando &amp;lt;code&amp;gt;manpath -c&amp;lt;/code&amp;gt; ein:&lt;br /&gt;
 archangel:/ # manpath -c&lt;br /&gt;
 /var/cache/man:/var/cache/man/local:/var/cache/man/opt&lt;br /&gt;
=Die Sektionen des Mansystems=&lt;br /&gt;
Das Mansystem ist in mehrere Sektionen unterteilt. Diese Sektionen sind folgendermaßen gegliedert:&lt;br /&gt;
*ausführbare Programme für Benutzer&lt;br /&gt;
*Systemaufrufe (Funktionen, die durch den Kernel unterstützt werden)&lt;br /&gt;
*Bibliothekaufrufe (Libraries)&lt;br /&gt;
*besondere Dateien (normalerweise in &#039;&#039;/dev&#039;&#039;)&lt;br /&gt;
*Dateiformate und Konventionen&lt;br /&gt;
*Spiele&lt;br /&gt;
*Sonstiges (Makro-Pakete und Konventionen)&lt;br /&gt;
*administrative Programme (nur für den User root)&lt;br /&gt;
*Kernel-Routinen (nicht standardisiert)&lt;br /&gt;
=Aufbau von Manpages=&lt;br /&gt;
Der Aufbau einer Manpage ist festgelegt und sollte immer die folgenden Elemente enthalten:&lt;br /&gt;
*&#039;&#039;Name&#039;&#039; – die Bezeichnung des Elements mit einer kurzen Beschreibung&lt;br /&gt;
*&#039;&#039;Synopsis&#039;&#039; – eine vollständige Kurzbeschreibung der Syntax&lt;br /&gt;
*&#039;&#039;Description&#039;&#039; – eine ausführliche Beschreibung des Elements&lt;br /&gt;
*&#039;&#039;Defaults&#039;&#039; – voreingestellte Parameter&lt;br /&gt;
*&#039;&#039;Overview&#039;&#039; – ein Überblick über die komplexeren Zusammenhänge&lt;br /&gt;
*&#039;&#039;Options&#039;&#039; – Optionen und deren Beschreibung&lt;br /&gt;
*&#039;&#039;Return Values&#039;&#039; – Informationen über eventuelle Rückgabewerte, teilweise auch als Exit-Status bezeichnet&lt;br /&gt;
*&#039;&#039;See also&#039;&#039; – Verweise auf artverwandte Themen&lt;br /&gt;
*&#039;&#039;Bugs&#039;&#039; – bekannte Fehler&lt;br /&gt;
*&#039;&#039;Files&#039;&#039; – Konfigurationsdateien u. Ä.&lt;br /&gt;
Es sind noch mehr Elemente denkbar, aber die hier aufgeführten sind die wohl geläufigsten.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Linux:LPIC:101]]&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=LPIC101/103.3_Grundlegende_Dateiverwaltung&amp;diff=7177</id>
		<title>LPIC101/103.3 Grundlegende Dateiverwaltung</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=LPIC101/103.3_Grundlegende_Dateiverwaltung&amp;diff=7177"/>
		<updated>2019-12-04T18:33:51Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: /* Wichtige Anwendungen zur Dateiverwaltung */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Einleitung=&lt;br /&gt;
In diesem Artikel geht es darum, wie man Dateien und Verzeichnisse durch Kommandos verwalten kann.&lt;br /&gt;
&lt;br /&gt;
==Begriffsklärung==&lt;br /&gt;
Wichtigste Datenverwaltungen:&lt;br /&gt;
Einzelne oder mehrere Dateien, einzelne oder mehrere Verzeichnisse: kopieren, verschieben, löschen, suchen, anzeigen und sortieren.&lt;br /&gt;
&lt;br /&gt;
==Wichtige Anwendungen zur Dateiverwaltung==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Option !! Beschreibung&lt;br /&gt;
|-&lt;br /&gt;
| [[Linuxbefehl: cp|cp]] ||  Eine oder mehrere Dateien kopieren&lt;br /&gt;
|-&lt;br /&gt;
|  [[Linuxbefehl: find|find]]  ||  	Nach Datei(en) in einem Verzeichnis inkl. Unterverzeichniss(en) suchen&lt;br /&gt;
|-&lt;br /&gt;
| [[Mkdir - Verzeichnisse erstellen|mkdir]] || Verzeichnisse erstellen.&lt;br /&gt;
|-&lt;br /&gt;
| [[MV - move and rename files|mv]]  || Dateien und Verzeichnisse verschieben bzw. umbenannen&lt;br /&gt;
|-&lt;br /&gt;
| [[Linuxbefehl: ls|ls]]  || Inhalt eines Verzeichnisses bzw. Ordners anzeigen&lt;br /&gt;
|-&lt;br /&gt;
| [[Rm|rm]] 	 ||  Dateien und Verzeichnisse löschen &lt;br /&gt;
|-&lt;br /&gt;
| [[Rmdir|rmdir]] ||  Leere Verzeichnisse (nur leere Verzeichnisse) löschen&lt;br /&gt;
|-&lt;br /&gt;
| [[Touch|touch]] || Zeitstempel von Dateien ändern&lt;br /&gt;
|-&lt;br /&gt;
| [[Linuxbefehl: tar|tar]] ||  Daten im Archiv sichern (nicht komprimiert)&lt;br /&gt;
|-&lt;br /&gt;
| [[Linuxbefehl: cpio|cpio]] || Archivdaten verwalten&lt;br /&gt;
|-&lt;br /&gt;
| [[Linuxbefehl: dd|dd]] ||  Festplatten, Partitionen oder Dateien bit-genau Kopieren. &lt;br /&gt;
|-&lt;br /&gt;
| [[Linuxbefehl: file|file]] || Typ einer Datei erkennen&lt;br /&gt;
|-&lt;br /&gt;
| [[Dateien komprimieren mit &amp;quot;gzip&amp;quot;|gzip]] || Dateien komprimieren&lt;br /&gt;
|-&lt;br /&gt;
| gunzip || Dateien unkomprimieren&lt;br /&gt;
|-&lt;br /&gt;
| bzip2 || Dateien komprimieren&lt;br /&gt;
|-&lt;br /&gt;
| bunzip2 || Dateien unkomprimieren&lt;br /&gt;
|-&lt;br /&gt;
| xz || Dateien komprimieren&lt;br /&gt;
|-&lt;br /&gt;
| unxz || Dateien unkomprimieren&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Die Tilde==&lt;br /&gt;
[[Tilde|Die Tilde(~)]] zeigt an, dass Sie sich gerade in Ihrem Heimatverzeichnis befinden.&amp;lt;br&amp;gt;&lt;br /&gt;
Die Tilde kann auch in Pfadangaben verwendet werden.&amp;lt;br&amp;gt;&lt;br /&gt;
[[Tilde|Beispiele und mehr Infos zur Tilde (~)]]&lt;br /&gt;
&lt;br /&gt;
==Absolute Pfadangaben==&lt;br /&gt;
[[Absolute Pfadangaben|Absoluter Pfad]] bedeutet, dass Sie den ganzen Pfad vom Hauptverzeichnis aus angeben,&amp;lt;br&amp;gt;&lt;br /&gt;
egal, in welchem Verzeichnis Sie sich selbst gerade befinden.&amp;lt;br&amp;gt;&lt;br /&gt;
Ein Verzeichniswechsel mit einer absoluten Pfadangabe beginnt immer mit einem Slash.&amp;lt;br&amp;gt;&lt;br /&gt;
[[Absolute Pfadangaben|Beispiele und mehr Infos zur Absolute Pfadangaben]]&lt;br /&gt;
&lt;br /&gt;
==Relative Pfadangaben==&lt;br /&gt;
&lt;br /&gt;
Bei einem Verzeichniswechsel mit [[Relative Pfadangaben|Relative Pfadangabe]] bewegen Sie sich relativ zum aktuellen Verzeichnis fort.&amp;lt;br&amp;gt;&lt;br /&gt;
Eine relative Pfadangabe beginnt deshalb nie mit einem Slash.&amp;lt;br&amp;gt;&lt;br /&gt;
[[Relative Pfadangaben|Beispiele und mehr Infos zur Relative Pfadangaben]]&lt;br /&gt;
&lt;br /&gt;
=Kontrollfragen=&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Testfrage 1&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;Antwort1&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Testfrage 2&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;Antwort2&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Testfrage 3&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;Antwort3&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Testfrage 4&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;Antwort4&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Testfrage 5&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;Antwort5&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Linux:LPIC:101]]&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=LPIC101/103.3_Grundlegende_Dateiverwaltung&amp;diff=7176</id>
		<title>LPIC101/103.3 Grundlegende Dateiverwaltung</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=LPIC101/103.3_Grundlegende_Dateiverwaltung&amp;diff=7176"/>
		<updated>2019-12-04T18:33:02Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: /* Wichtige Anwendungen zur Dateiverwaltung */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Einleitung=&lt;br /&gt;
In diesem Artikel geht es darum, wie man Dateien und Verzeichnisse durch Kommandos verwalten kann.&lt;br /&gt;
&lt;br /&gt;
==Begriffsklärung==&lt;br /&gt;
Wichtigste Datenverwaltungen:&lt;br /&gt;
Einzelne oder mehrere Dateien, einzelne oder mehrere Verzeichnisse: kopieren, verschieben, löschen, suchen, anzeigen und sortieren.&lt;br /&gt;
&lt;br /&gt;
==Wichtige Anwendungen zur Dateiverwaltung==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Option !! Beschreibung&lt;br /&gt;
|-&lt;br /&gt;
| [[Cp|cp]] ||  Eine oder mehrere Dateien kopieren&lt;br /&gt;
|-&lt;br /&gt;
|  [[Linuxbefehl: find|find]]  ||  	Nach Datei(en) in einem Verzeichnis inkl. Unterverzeichniss(en) suchen&lt;br /&gt;
|-&lt;br /&gt;
| [[Mkdir - Verzeichnisse erstellen|mkdir]] || Verzeichnisse erstellen.&lt;br /&gt;
|-&lt;br /&gt;
| [[MV - move and rename files|mv]]  || Dateien und Verzeichnisse verschieben bzw. umbenannen&lt;br /&gt;
|-&lt;br /&gt;
| [[Linuxbefehl: ls|ls]]  || Inhalt eines Verzeichnisses bzw. Ordners anzeigen&lt;br /&gt;
|-&lt;br /&gt;
| [[Rm|rm]] 	 ||  Dateien und Verzeichnisse löschen &lt;br /&gt;
|-&lt;br /&gt;
| [[Rmdir|rmdir]] ||  Leere Verzeichnisse (nur leere Verzeichnisse) löschen&lt;br /&gt;
|-&lt;br /&gt;
| [[Touch|touch]] || Zeitstempel von Dateien ändern&lt;br /&gt;
|-&lt;br /&gt;
| [[Linuxbefehl: tar|tar]] ||  Daten im Archiv sichern (nicht komprimiert)&lt;br /&gt;
|-&lt;br /&gt;
| [[Linuxbefehl: cpio|cpio]] || Archivdaten verwalten&lt;br /&gt;
|-&lt;br /&gt;
| [[Linuxbefehl: dd|dd]] ||  Festplatten, Partitionen oder Dateien bit-genau Kopieren. &lt;br /&gt;
|-&lt;br /&gt;
| [[Linuxbefehl: file|file]] || Typ einer Datei erkennen&lt;br /&gt;
|-&lt;br /&gt;
| [[Dateien komprimieren mit &amp;quot;gzip&amp;quot;|gzip]] || Dateien komprimieren&lt;br /&gt;
|-&lt;br /&gt;
| gunzip || Dateien unkomprimieren&lt;br /&gt;
|-&lt;br /&gt;
| bzip2 || Dateien komprimieren&lt;br /&gt;
|-&lt;br /&gt;
| bunzip2 || Dateien unkomprimieren&lt;br /&gt;
|-&lt;br /&gt;
| xz || Dateien komprimieren&lt;br /&gt;
|-&lt;br /&gt;
| unxz || Dateien unkomprimieren&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Die Tilde==&lt;br /&gt;
[[Tilde|Die Tilde(~)]] zeigt an, dass Sie sich gerade in Ihrem Heimatverzeichnis befinden.&amp;lt;br&amp;gt;&lt;br /&gt;
Die Tilde kann auch in Pfadangaben verwendet werden.&amp;lt;br&amp;gt;&lt;br /&gt;
[[Tilde|Beispiele und mehr Infos zur Tilde (~)]]&lt;br /&gt;
&lt;br /&gt;
==Absolute Pfadangaben==&lt;br /&gt;
[[Absolute Pfadangaben|Absoluter Pfad]] bedeutet, dass Sie den ganzen Pfad vom Hauptverzeichnis aus angeben,&amp;lt;br&amp;gt;&lt;br /&gt;
egal, in welchem Verzeichnis Sie sich selbst gerade befinden.&amp;lt;br&amp;gt;&lt;br /&gt;
Ein Verzeichniswechsel mit einer absoluten Pfadangabe beginnt immer mit einem Slash.&amp;lt;br&amp;gt;&lt;br /&gt;
[[Absolute Pfadangaben|Beispiele und mehr Infos zur Absolute Pfadangaben]]&lt;br /&gt;
&lt;br /&gt;
==Relative Pfadangaben==&lt;br /&gt;
&lt;br /&gt;
Bei einem Verzeichniswechsel mit [[Relative Pfadangaben|Relative Pfadangabe]] bewegen Sie sich relativ zum aktuellen Verzeichnis fort.&amp;lt;br&amp;gt;&lt;br /&gt;
Eine relative Pfadangabe beginnt deshalb nie mit einem Slash.&amp;lt;br&amp;gt;&lt;br /&gt;
[[Relative Pfadangaben|Beispiele und mehr Infos zur Relative Pfadangaben]]&lt;br /&gt;
&lt;br /&gt;
=Kontrollfragen=&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Testfrage 1&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;Antwort1&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Testfrage 2&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;Antwort2&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Testfrage 3&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;Antwort3&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Testfrage 4&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;Antwort4&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;Testfrage 5&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&#039;&#039;&#039;Antwort5&#039;&#039;&#039;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Linux:LPIC:101]]&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=Ls&amp;diff=7175</id>
		<title>Ls</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=Ls&amp;diff=7175"/>
		<updated>2019-12-04T18:31:44Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: Die Seite wurde neu angelegt: „=Bezeichnung=  &amp;#039;&amp;#039;&amp;#039;ls&amp;#039;&amp;#039;&amp;#039; - Verzeichnisinhalte auflisten.  ls steht für list und zeigt den Inhalt eines Verzeichnisses bzw. Ordners an.  =Übersicht=  ls [OPTIO…“&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Bezeichnung=&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ls&#039;&#039;&#039; - Verzeichnisinhalte auflisten.&lt;br /&gt;
&lt;br /&gt;
ls steht für list und zeigt den Inhalt eines Verzeichnisses bzw. Ordners an.&lt;br /&gt;
&lt;br /&gt;
=Übersicht=&lt;br /&gt;
&lt;br /&gt;
ls [OPTION]… [DATEI]…&lt;br /&gt;
&lt;br /&gt;
=Optionen=&lt;br /&gt;
&lt;br /&gt;
*-&#039;&#039;&#039;A&#039;&#039;&#039; oder --almost-all 	listet auch versteckte Dateien auf&lt;br /&gt;
*&#039;&#039;&#039;-a&#039;&#039;&#039; oder --all 	listet auch versteckte Dateien und Verzeichniseinträge wie . und .. auf&lt;br /&gt;
*&#039;&#039;&#039;-l&#039;&#039;&#039; 	Datei-Informationen in Langform ausgeben&lt;br /&gt;
*&#039;&#039;&#039;-c&#039;&#039;&#039; 	Datum der letzten Änderung&lt;br /&gt;
*&#039;&#039;&#039;-C&#039;&#039;&#039; 	Namen nebeneinander ausgeben (Standard)&lt;br /&gt;
*&#039;&#039;&#039;-d&#039;&#039;&#039; oder --directory 	Verzeichnisse und keine Inhalte anzeigen&lt;br /&gt;
*&#039;&#039;&#039;-h&#039;&#039;&#039; oder --human-readable 	gibt in Kombination mit -l die Größe in einem für Menschen besser lesbaren Format aus&lt;br /&gt;
*&#039;&#039;&#039;-i&#039;&#039;&#039; 	Inode-Nummer vor Name ausgeben&lt;br /&gt;
*&#039;&#039;&#039;-m&#039;&#039;&#039; 	Namen in einer Zeile ausgeben&lt;br /&gt;
*&#039;&#039;&#039;-R&#039;&#039;&#039; oder --recursive 	Auch in Unterverzeichnisse absteigen &lt;br /&gt;
&lt;br /&gt;
=Beispiel=&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ls -l&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
 insgesamt 100&lt;br /&gt;
 drwxr-xr-x 2 user user  4096 Mär 15 13:42 backup&lt;br /&gt;
 drwxr-xr-x 2 user user  4096 Feb 13 14:24 Bilder&lt;br /&gt;
 drwxr-xr-x 3 user user  4096 Feb 20 13:53 bin&lt;br /&gt;
 drwxr-xr-x 3 user user  4096 Mär 22 14:37 Dokumente&lt;br /&gt;
 drwxr-xr-x 2 user user  4096 Mär 19 12:12 Downloads&lt;br /&gt;
 -rw-r--r-- 1 user user    62 Apr  4 09:53 email&lt;br /&gt;
 drwxr-xr-x 2 user user  4096 Apr  3 09:01 Keepassxc&lt;br /&gt;
 drwxr-xr-x 2 user user  4096 Feb 13 14:24 Musik&lt;br /&gt;
 drwxr-xr-x 2 user user  4096 Feb 13 14:24 Öffentlich&lt;br /&gt;
 -rw-r--r-- 1 user user 27349 Feb 14 11:05 print.pdf&lt;br /&gt;
 drwxr-xr-x 2 user user  4096 Feb 28 09:57 Schreibtisch&lt;br /&gt;
 drwxr-xr-x 2 user user  4096 Feb 28 12:28 team&lt;br /&gt;
 drwxr-xr-x 2 user user  4096 Feb 13 14:24 Videos&lt;br /&gt;
 drwxr-xr-x 2 user user  4096 Feb 13 14:24 Vorlagen&lt;br /&gt;
 -rw-r--r-- 1 user user 19451 Feb 27 12:21 vorla_projektstatusbericht_drucker-1.odt&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ls -a&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
 .                        .bash_history-07097.tmp  .bash_history-11740.tmp  .bash_history-22853.tmp &lt;br /&gt;
 ..                       .bash_history-07098.tmp  .bash_history-11752.tmp  .bash_history-22862.tmp &lt;br /&gt;
 backup                   .bash_history-07110.tmp  .bash_history-11754.tmp  .bash_history-22871.tmp &lt;br /&gt;
 .bash_history            .bash_history-07112.tmp  .bash_history-11761.tmp  .bash_history-22873.tmp&lt;br /&gt;
 .bash_history-02822.tmp  .bash_history-07113.tmp  .bash_history-11765.tmp  .bash_history-22876.tmp&lt;br /&gt;
 .bash_history-02987.tmp  .bash_history-07115.tmp  .bash_history-11766.tmp  .bash_history-22899.tmp&lt;br /&gt;
 .bash_history-03008.tmp  .bash_history-07122.tmp  .bash_history-11781.tmp  .bash_history-22932.tmp&lt;br /&gt;
 .bash_history-03017.tmp  .bash_history-07123.tmp  .bash_history-11799.tmp  .bash_history-22934.tmp&lt;br /&gt;
 .bash_history-03021.tmp  .bash_history-07124.tmp  .bash_history-11807.tmp  .bash_history-22936.tmp&lt;br /&gt;
 .bash_history-03068.tmp  .bash_history-07125.tmp  .bash_history-11812.tmp  .bash_history-22938.tmp&lt;br /&gt;
 .bash_history-03081.tmp  .bash_history-07136.tmp  .bash_history-11826.tmp  .bash_history-22941.tmp&lt;br /&gt;
 .bash_history-03112.tmp  .bash_history-07141.tmp  .bash_history-11837.tmp  .bash_history-22942.tmp &lt;br /&gt;
 &#039;&#039;und so weiter&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ls -l&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
 1701841 backup     1700626 Downloads  1700628 Öffentlich    1700632 Videos&lt;br /&gt;
 1700631 Bilder     1701771 email      1700654 print.pdf     1700627 Vorlagen&lt;br /&gt;
 1706514 bin        1701905 Keepassxc  1700624 Schreibtisch  1701915 vorla_projektstatusbericht_drucker-1.odt&lt;br /&gt;
 1700629 Dokumente  1700630 Musik      1700614 team&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ls -hils (oder ls -h -i -l -s)&#039;&#039;&#039;   &lt;br /&gt;
&lt;br /&gt;
 insgesamt 32K&lt;br /&gt;
 11141201 4,0K drwxr-xr-x 2 wissam wissam 4,0K Okt 25 11:42 Bilder&lt;br /&gt;
 11141199 4,0K drwxr-xr-x 2 wissam wissam 4,0K Okt 25 11:42 Dokumente&lt;br /&gt;
 11141196 4,0K drwxr-xr-x 2 wissam wissam 4,0K Okt 30 10:00 Downloads&lt;br /&gt;
 11141200 4,0K drwxr-xr-x 2 wissam wissam 4,0K Okt 25 11:42 Musik&lt;br /&gt;
 11141198 4,0K drwxr-xr-x 2 wissam wissam 4,0K Okt 25 11:42 Öffentlich&lt;br /&gt;
 11141195 4,0K drwxr-xr-x 2 wissam wissam 4,0K Okt 29 11:53 Schreibtisch&lt;br /&gt;
 11141202 4,0K drwxr-xr-x 2 wissam wissam 4,0K Okt 25 11:42 Videos&lt;br /&gt;
 11141197 4,0K drwxr-xr-x 2 wissam wissam 4,0K Okt 25 11:42 Vorlagen&lt;br /&gt;
&lt;br /&gt;
[[Category:Linuxbefehle]]&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Linux:LPIC:101]]&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
	<entry>
		<id>https://wiki.foxtom.de/index.php?title=Declare&amp;diff=7171</id>
		<title>Declare</title>
		<link rel="alternate" type="text/html" href="https://wiki.foxtom.de/index.php?title=Declare&amp;diff=7171"/>
		<updated>2019-12-04T18:17:51Z</updated>

		<summary type="html">&lt;p&gt;Alaa Eldhawibi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;code&amp;gt;&#039;&#039;&#039;declare:&#039;&#039;&#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
Setzt Variablenwerte und deren Attribute.&lt;br /&gt;
Deklariert Variablen und weist ihnen Attribute zu. Wenn keine Namen angegeben sind, werden die Attribute und Werte aller Variablen ausgegeben.  &lt;br /&gt;
 &lt;br /&gt;
&#039;&#039;&#039;Optionen:&#039;&#039;&#039;&lt;br /&gt;
 -f        Schränkt Aktionen oder Anzeigen auf Funktionsnamen und Definitionen ein.&lt;br /&gt;
 -F        Zeigt nur Funktionsnamen an (inklusive Zeilennummer und Quelldatei beim Debuggen).&lt;br /&gt;
 -g        Deklariert globale Varieblen innerhalb einer Shellfunktion; wird ansonsten ignoriert.&lt;br /&gt;
 -p        Zeigt die Attribute und Werte jeder angegebenenVariable an.&lt;br /&gt;
&#039;&#039;&#039;Attribute setzen:&#039;&#039;&#039;&lt;br /&gt;
 -a        Deklariert ein indiziertes Feld (wenn unterstützt).&lt;br /&gt;
 -A        Deklariert ein assoziatives Feld (wenn unterstützt).&lt;br /&gt;
 -i        Deklariert eine Integer Variable.&lt;br /&gt;
 -l        Konvertiert die Variabennmamen in Kleinbuchstaben.&lt;br /&gt;
 -n        Der Name wird als Variable interpretiert. &lt;br /&gt;
 -r        Deklariert nur lesbare Variablen.&lt;br /&gt;
 -t        Weist das »trace« Attibut zu.&lt;br /&gt;
 -u        Konvertiert die Variablennamen in Großbuchstaben.&lt;br /&gt;
 -x        Exportiert die Variablen über die aktuelle Shellumgebung hinaus.  &lt;br /&gt;
*Das Voranstellen von »+« anstelle von »-« schaltet die gegebenen Attribute ab.&lt;br /&gt;
*Für Integer Variablen werden bei der Zuweisung arithmetische Berechnungen durchgeführt (siehe `help let&#039;).&lt;br /&gt;
*Innerhalb einer Funktion werden lokale Variablen erzeugt. Die Option »-g« unterdrückt dieses Verhalten.&lt;br /&gt;
    &lt;br /&gt;
&#039;&#039;&#039;Rückgabewert:&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
*Gibt »Erfolg« zurück, außer eine ungültige Option wurde angegeben, oder ein Fehler trat auf.&lt;br /&gt;
&lt;br /&gt;
[[Category:Linuxbefehle]]&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Linux:LPIC:101]]&lt;/div&gt;</summary>
		<author><name>Alaa Eldhawibi</name></author>
	</entry>
</feed>