RHCSA -Serie So führen Sie Datei- und Verzeichnismanagement - Teil 2 aus

RHCSA -Serie So führen Sie Datei- und Verzeichnismanagement - Teil 2 aus

In diesem Artikel, RHCSA Teil 2: Datei- und Verzeichnismanagement werden wir einige wesentliche Fähigkeiten überprüfen, die in den täglichen Aufgaben eines Systemadministrators erforderlich sind.

RHCSA: Führen Sie Datei- und Verzeichnisverwaltung durch - Teil 2 durch

Erstellen, löschen, kopieren und verschieben Sie Dateien und Verzeichnisse

Datei- und Verzeichnismanagement ist eine kritische Kompetenz, die jeder Systemadministrator besitzen sollte. Dies beinhaltet die Möglichkeit, Textdateien von Grund auf neu zu erstellen / zu löschen (der Kern der Konfiguration jedes Programms) und Verzeichnisse (in denen Sie Dateien und andere Verzeichnisse organisieren) und die Art der vorhandenen Dateien herauszufinden.

Der Befehl touch kann nicht nur verwendet werden, um leere Dateien zu erstellen, sondern auch die Zugriffs- und Änderungszeiten vorhandener Dateien zu aktualisieren.

BOOND -Befehlsbeispiel

Sie können verwenden Datei [Dateiname] Um den Typ einer Datei zu ermitteln (dies wird nützlich sein, bevor Sie Ihren bevorzugten Texteditor zum Bearbeiten starten).

Dateibefehlsbeispiel

Und RM [Dateiname] um es zu löschen.

RM -Befehlsbeispiel

In Bezug auf Verzeichnisse können Sie Verzeichnisse in vorhandenen Pfaden erstellen Mkdir [Verzeichnis] oder einen vollständigen Weg erstellen mit MKDIR -P [/full/path/to/verzeichnis].

MKDIR -Befehlsbeispiel

Wenn es darum geht, Verzeichnisse zu entfernen, müssen Sie sicherstellen, dass sie leer sind, bevor Sie das ausstellen RMDIR [Verzeichnis] Befehl oder verwenden Sie die leistungsfähigeren (mit Vorsicht verarbeiten!) RM -RF [Verzeichnis]. Diese letzte Option erzwingt die Entfernung rekursiv die [Verzeichnis] und alle seine Inhalte - verwenden Sie es also auf eigenes Risiko.

Eingabe- und Ausgangsumleitung und Pipelination

Die Befehlszeilenumgebung bietet zwei sehr nützliche Funktionen, mit denen das umleiten kann Eingang Und Ausgang von Befehlen von und an Dateien und an die Ausgabe eines Befehls an einen anderen, der als Umleitung bzw. Pipelining bezeichnet wird.

Um diese beiden wichtigen Konzepte zu verstehen, müssen wir zunächst die drei wichtigsten Arten von E/O -Streams (Eingabe und Ausgabe) (oder Sequenzen) von Zeichen, die tatsächlich spezielle Dateien sind, im *Nix -Sinne des Wortes verstehen.

  1. Standardeingabe (auch bekannt als Stdin) ist standardmäßig an die Tastatur angeschlossen. Mit anderen Worten, die Tastatur ist das Standardeingabegerät, um Befehle in die Befehlszeile einzugeben.
  2. Standardausgabe (alias stdout) wird standardmäßig mit dem Bildschirm angehängt, das Gerät, das die Ausgabe von Befehlen „empfängt“ und auf dem Bildschirm anzeigt.
  3. Standart Fehler (aka stderr), wo die Statusmeldungen eines Befehls standardmäßig gesendet werden, was auch der Bildschirm ist.

Im folgenden Beispiel die Ausgabe von ls /var wird an gesendet Stdout (der Bildschirm) sowie das Ergebnis von LS /Tecmint. Aber im letzteren Fall ist es Stderr das ist gezeigt.

Eingangs- und Ausgangsbeispiel

Um diese speziellen Dateien leichter zu identifizieren, wird ihnen jeweils einen Dateideskriptor zugewiesen, eine abstrakte Darstellung, die zum Zugriff auf sie verwendet wird. Das Wesentliche zu verstehen ist, dass diese Dateien, genau wie andere, umgeleitet werden können. Dies bedeutet, dass Sie die Ausgabe aus einer Datei oder einem Skript erfassen und als Eingabe an eine andere Datei, den Befehl oder an einen anderen Skript senden können. Auf diese Weise können Sie auf der Festplatte speichern, beispielsweise die Ausgabe von Befehlen für die spätere Verarbeitung oder Analyse.

Um stdin (fd 0), stdout (fd 1) oder stderr (fd 2) umzuleiten, sind die folgenden Betreiber verfügbar.

Umleitungsoperator Wirkung
> Umleitet die Standardausgabe in eine Datei mit Standardausgabe. Wenn die Zieldatei vorliegt, wird sie überschrieben.
>> Fängt die Standardausgabe an eine Datei an.
2> Leitet den Standardfehler in eine Datei mit Standardausgabe um. Wenn die Zieldatei vorliegt, wird sie überschrieben.
2 >> Fängt den Standardfehler an die vorhandene Datei an.
&> Umleitet sowohl die Standardausgabe als auch den Standardfehler in eine Datei; Wenn die angegebene Datei vorhanden ist, wird sie überschrieben.
< Verwendet die angegebene Datei als Standardeingabe.
Die angegebene Datei wird sowohl für die Standardeingabe als auch für die Standardausgabe verwendet.

Im Gegensatz zur Umleitung wird das Pipelining durch Hinzufügen einer vertikalen Stange durchgeführt (|) Nach einem Befehl und vor einem anderen.

Erinnern:

  1. Umleitung wird verwendet, um die Ausgabe eines Befehls an eine Datei zu senden, oder um eine Datei als Eingabe an einen Befehl zu senden.
  2. Pipelination wird verwendet, um die Ausgabe eines Befehls an einen anderen Befehl als Eingabe zu senden.

Beispiele für Umleitung und Pipelination

Beispiel 1: Umleiten Sie die Ausgabe eines Befehls in eine Datei um

Es wird Zeiten geben, in denen Sie über eine Liste von Dateien iterieren müssen. Dazu können Sie zuerst diese Liste in einer Datei speichern und diese Dateizeile nach Zeile lesen. Während es wahr ist, dass Sie die Ausgabe von LS direkt itererieren können, dient dieses Beispiel dazu, die Umleitung zu veranschaulichen.

# ls -1 /var /mail> mail.txt 
Ausgabe der Ausgabe von Befehlsdatei umleiten
Beispiel 2: Umleitung sowohl stdout als auch stderr zu /dev /null

Falls wir verhindern möchten, dass sowohl STDOut als auch Stderr auf dem Bildschirm angezeigt werden, können wir beide Dateideskriptoren umleiten /dev/null. Beachten Sie, wie sich die Ausgabe ändert, wenn die Umleitung für denselben Befehl implementiert wird.

# ls /var /tecmint # ls /var / /tecmint &> /dev /null 
Stdout und Stderr Ouput zu /dev /null umleiten
Beispiel 3: Verwenden einer Datei als Eingabe zu einem Befehl

Während die klassische Syntax des CAT -Befehls wie folgt lautet.

# CAT [Datei (en)] 

Sie können eine Datei auch als Eingabe senden, indem Sie den richtigen Umleitungsoperator verwenden.

# Katze < mail.txt 
CAT -Befehlsbeispiel
Beispiel 4: Senden Sie die Ausgabe eines Befehls als Eingabe an einen anderen

Wenn Sie ein großes Verzeichnis oder eine Prozessauflistung haben und in der Lage sein möchten, eine bestimmte Datei oder einen bestimmten Prozess auf einen Blick zu finden, möchten Sie die Auflistung in Grep pipeline.

Beachten Sie, dass wir im folgenden Beispiel Pipelines verwenden. Der erste sucht nach dem erforderlichen Schlüsselwort, während das zweite das tatsächliche beseitigt GREP -Befehl Aus den Ergebnissen. In diesem Beispiel werden alle mit dem Apache -Benutzer zugeordneten Prozesse aufgeführt.

# ps -f | Grep Apache | Grep -v Grep 
Senden Sie die Ausgabe des Befehls als Eingabe auf andere Seiten: 1 2