GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Linux-Verzeichnisbefehle:Eine vollständige Anleitung

Linux-Kenntnisse sind immer gefragt. Bauen Sie Ihre Fähigkeiten aus, indem Sie lernen, wie Sie Linux-Verzeichnisbefehle und Linux-Dateibefehle verwenden. Dieser Leitfaden ist als Reise geschrieben. Eine Reihe von Schritt-für-Schritt-Anleitungen, die Sie durch das Navigieren, Erstellen, Entfernen, Verschieben und Umbenennen von Verzeichnissen und Dateien führen. Alles über die Linux-Befehlszeile.

Wenn Sie bereit sind, praktische, reale Linux-Kenntnisse aufzubauen, sind Sie hier genau richtig!

Voraussetzungen

Um die Linux-Beispiele in diesem Handbuch zu üben, benötigen Sie einen Computer, auf dem Linux ausgeführt wird. Die Distribution von Linux spielt keine Rolle. Alle Demos in diesem Handbuch verwenden RedHat Enterprise Linux 8 (RHEL).

Ubuntu 20.04 LTS ist eine großartige Alternative, wenn Sie RedHat nicht verwenden möchten.

Verzeichnisse auflisten und finden

Wenn Sie mitmachen, öffnen Sie eine Terminalsitzung auf Ihrem Linux-Computer.

Finden des aktuellen Verzeichnisses mit pwd

Wenn Sie in einem Terminal durch ein Dateisystem navigieren, befindet sich Ihre Eingabeaufforderung immer in einem bestimmten Verzeichnis, das als aktuelles Verzeichnis oder Arbeitsverzeichnis bezeichnet wird. Abhängig von der Konfiguration des Terminals können Sie das Arbeitsverzeichnis in der Eingabeaufforderung sehen oder nicht.

Die pwd oder der Befehl Arbeitsverzeichnis drucken zeigt das aktuelle Verzeichnis an, in dem Sie sich befinden. Geben Sie den Befehl wie unten gezeigt ein:

pwd

Standardmäßig ist das Verzeichnis /home/ Ihr Ausgangspunkt in einer Terminalsitzung, es sei denn, Sie sind mit dem Root-Konto angemeldet.

Wenn Sie den Befehl ausführen, wird das Arbeitsverzeichnis wie unten gezeigt zurückgegeben:

Im Gegensatz zu Windows verwendet Linux keine Laufwerksbuchstaben (C:\ , D:\ usw.) für Festplatten oder Partitionen (eine logische Region auf einer Festplatte). Unter Linux wird Verzeichnissen ein / vorangestellt .

Auflisten von Dateien und Ordnern mit dem ls Befehl

Innerhalb von Verzeichnissen finden Sie Dateien und Unterordner. Die pwd Der Befehl zeigt nur das Arbeitsverzeichnis an, wie sehen Sie also Unterverzeichnisse und Dateien? Die ls Befehl.

Die ls oder list directory ist das Äquivalent zu dir Befehl in Windows. Dieser Befehl listet Dateien und Verzeichnisse im aktuellen Verzeichnis oder einem beliebigen angegebenen alternativen Pfad auf.

Die dir Der Befehl existiert auch unter Linux. Entspricht dem Ausführen von ls -C -b . Typischerweise ls wird über dir verwendet da mehr Anzeigeflexibilität vorhanden ist.

Um Dateien und Verzeichnisse im Verzeichnis /home/user zu finden Verzeichnis, führen Sie ls aus Befehl. Die resultierende Ausgabe sind die verschiedenen darin enthaltenen Dateien und Verzeichnisse (Ordner).

ls

Die ls Der Befehl zeigt auch zusätzliche Informationen zu Dateien und Ordnern wie Berechtigungen, Dateigröße (in Bytes) und Dateidaten mit dem l an Möglichkeit. Wie in Windows können einige Dateien und Ordner vom Betriebssystem aus der normalen Ansicht ausgeblendet werden. Zeigen Sie Dateien an, die standardmäßig nicht angezeigt werden, mit dem a Option.

Dotfiles sind Klartext-Konfigurationsdateien in Unix-Systemen. Jede Datei kann ausgeblendet werden, wenn dem Dateinamen ein Punkt . vorangestellt wird .

ls -la

Sie können im folgenden Screenshot sehen, indem Sie den la verwenden Optionen erhalten Sie viel mehr Informationen, die in sechs verschiedenen Spalten von links nach rechts angezeigt werden:

  • Berechtigungen im POSIX-ACL-Format mit vorangestelltem d bezeichnet ein Verzeichnis
  • Unterverzeichnisse zählen bei Verzeichnissen, die nur Dateien enthalten, als 1
  • Benutzer und Gruppe, zu der eine Datei oder ein Ordner gehört
  • Verzeichnis- oder Dateigröße in Bytes
  • Zeitpunkt der letzten Änderung
  • Name der Datei oder des Ordners

Alle Dateien und Ordner finden Sie in Unterverzeichnissen mit dem -R Option zur rekursiven Anzeige von Verzeichnisinhalten.

ls -R

Wenn Sie den Inhalt eines anderen Verzeichnisses anzeigen möchten, übergeben Sie das Zielverzeichnis an ls . Unten gezeigt sind die /var/log Inhalt des Verzeichnisses, ohne /home/user zu verlassen Verzeichnis.

ls /var/log

Suchen von Dateien und Ordnern mit find

Das Auffinden von Dateien in einem großen Dateisystem ist schwierig. Zum Glück die find Der Befehl bietet mehrere Möglichkeiten, die benötigten Dateien und Ordner zu finden.

Beispielsweise möchten Sie /var finden Verzeichnis. Gegeben sei ein Startpunkt, / , und legen Sie den Typ als d fest Suchen Sie nach dem Verzeichnis im Dateisystem nach var Name.

sudo find / -type d -name "var"

Möglicherweise sehen Sie einen Permission Denied-Fehler, selbst wenn Sie den Befehl mit sudo ausführen . Der find versucht, ein virtuelles Dateisystem im Zusammenhang mit Gnome zu durchsuchen (wenn Sie KDE verwenden, tritt dieser Fehler nicht auf), auf das Ihr Benutzer keinen Zugriff hat. Steigen Sie stattdessen nicht in Verzeichnisse auf anderen Dateisystemen ab, indem Sie den -xdev verwenden wechseln Sie stattdessen.

Wie wäre es, alle Dateien mit der Log-Erweiterung zu finden? Suchen Sie ähnlich wie zuvor das Root-Dateisystem, aber geben Sie diesmal f an nach Dateien und suchen Sie nach dem Platzhaltermuster *.log .

sudo find / -type f -name "*.log"

Der find Der Befehl hat andere Optionen, wie z. B. H , L und P , die behandeln, wie symbolische Links behandelt werden.

Schneller nach Dateien suchen mit locate

Wie find , die locate Der Befehl sucht nach Dateien und Ordnern, tut dies jedoch schneller, indem er eine Datenbank anstelle des gesamten Dateisystems durchsucht.

Vielleicht haben Sie eine Datei namens MyTextFile.txt irgendwo auf Ihrem Computer. Sie haben vergessen, wo es sich befindet, und brauchen Hilfe, um den Pfad zu finden. Verwenden Sie den locate Befehl, um die Datei zu finden, indem Sie den Namen der Datei angeben, wie unten gezeigt.

locate MyTextFile.txt

Der locate Der Befehl findet Dateien, findet aber keine neuen Dateien bis sudo updatedb läuft. Ein Cronjob führt updatedb aus einmal am Tag, aber Sie können diesen Befehl jederzeit manuell ausführen.

Wie würden Sie alle Verzeichnisse mit dem Namen tmp finden ? Sie könnten */tmp übergeben , was locate mitteilt um die Datenbank nach Einträgen zu durchsuchen, die auf tmp enden .

locate */tmp

Verzeichniswechsel mit cd Befehl

Bisher haben Sie größtenteils in einem einzigen Verzeichnis gearbeitet. Der Betrieb unter Linux bedeutet oft, Verzeichnisse zu wechseln, was über cd erfolgt oder Verzeichniswechselbefehl. Anhand des Beispiels unten wird aus dem aktuellen Home-Verzeichnis /home/user, verschoben nach /var/log während Sie Ihr aktuelles Verzeichnis überprüfen.

# Show that you are in the current home directory
pwd
# Change to the /var/log directory
cd /var/log
# Verify that you are now in the /var/log directory
pwd

Nachdem Sie nun gelernt haben, in ein bestimmtes Verzeichnis zu wechseln, wie bewegen Sie sich ein Verzeichnis nach oben? Um sich ein Verzeichnis nach oben zu bewegen, verwenden Sie zwei Punkte (.. ), übergeben an cd Befehl. Nach der Ausführung bewegen Sie sich, wie unten zu sehen, um ein einzelnes Verzeichnis nach oben und landen wieder im /var/ Verzeichnis.

# Show that you are currently in the /var/log directory
pwd
# Move up a single directory
cd ..
# Verify that you have moved up to the /var directory
pwd

Wenn Sie in die /var/log wechseln möchten Verzeichnis erneut, übergeben Sie den Namen des Verzeichnisses, in das gewechselt werden soll, mit einem nachgestellten / .

# Show that you are currently in the /var directory
pwd
# Change to the /var/log directory
cd log/
# Verify that you are back in the /var/log directory
pwd

Wie unten zu sehen, geben Sie das Ziel-Unterverzeichnis nur mit einem nachgestellten / ein macht es überflüssig, jedes Mal einen absoluten Pfad einzugeben.

Wenn Sie sich bei der Verwendung von cd bezüglich eines Datei- oder Verzeichnisnamens nicht sicher sind , drücken Sie die TAB Taste zweimal drücken, um eine Liste mit Möglichkeiten zu erstellen. Beispiel:cd

Erstellen eines neuen Verzeichnisses mit mkdir

Das Erstellen eines Verzeichnisses in Linux erfolgt über den mkdir oder make directory-Befehl. So erstellen Sie ein neues Verzeichnis mit dem Namen MyAwesomeLinuxDir in Ihrem Home-Verzeichnis (gekennzeichnet durch den speziellen Pfad ~ ), verwenden Sie den folgenden Befehl.

mkdir ~/MyAwesomeLinuxDir

Wenn Linux das Verzeichnis erfolgreich erstellt, gibt Linux keine Meldung in der Konsole zurück. Mit dem ls können Sie die Verzeichnisse in Ihrem Home-Verzeichnis auflisten Befehl, um zu überprüfen, ob das Verzeichnis MyAwesomeLinuxDir , existiert.

Fügen Sie jetzt etwas Komplexität hinzu und erstellen Sie mehrere neue Verzeichnisse mit einem einzigen Befehl. Um mehrere Verzeichnisse zu erstellen, verwenden Sie den mkdir Befehl und übergeben Sie mehrere durch ein Leerzeichen getrennte Verzeichnisnamen.

mkdir ~/Directory01 ~/Directory02 ~/Directory03

Listen Sie noch einmal die Verzeichnisse mit dem ls auf Befehl. Wie Sie unten sehen können, existieren jetzt drei weitere Verzeichnisse.

So nützlich wie die Verwendung von mkdir Um einen einzelnen Ordner zu erstellen, was ist, wenn Sie viele Ordner auf einmal erstellen müssen? Anstatt jedes Verzeichnis abzutippen, verwenden Sie die Klammererweiterung! Diese Technik ist leistungsfähig, wenn mehrere Verzeichnisse mit einem ähnlichen Muster erstellt werden.

Die Klammererweiterung macht das Erstellen mehrerer Verzeichnisse basierend auf einem Muster schneller, als wenn Sie jedes von Hand eingeben würden. Um die Klammererweiterung zu demonstrieren, hängen Sie {03..07} an nach dem Namen Directory um fünf Verzeichnisse zu erzeugen. Sie werden vielleicht feststellen, dass Directory03 bereits vorhanden, weil Sie es in einem vorherigen Beispiel erstellt haben. Vermeiden Sie einen Fehler über vorhandene Verzeichnisse mit dem p Option.

mkdir -p ~/Directory{03..07}

Wie unten zu sehen, Verzeichnis03 nicht erstellt, sondern vier neue Verzeichnisse mit der Endung 04 bis 07 jetzt existieren.

Erstellen einer neuen Datei mit touch

Nachdem Sie nun gelernt haben, Ordner zu erstellen, wie erstellen Sie eine Datei? Unter Verwendung des Linux touch Befehl eine leere Datei erstellen, wie im nächsten Beispiel zu sehen.

touch ATABlog

Listen Sie noch einmal die Dateien und Ordner in Ihrem Home-Verzeichnis auf, um zu sehen, dass die neue Datei ATABlog Datei existiert.

Denken Sie daran, wie Sie erfahren haben, dass mkdir Befehl kann Klammererweiterung verwenden, um mehrere Verzeichnisse zu erstellen? Die gleiche Technik ist mit dem touch nützlich auch befehlen! Erstellen Sie fünf weitere ATABlog Dateien mit den Endungen 01 bis 05.

touch ATABlog{01..05}

Nach dem Auflisten der Dateien und Ordner mit ls , existieren fünf neue Dateien in Ihrem Home-Verzeichnis.

Entfernen von Verzeichnissen und Dateien in Linux

Im letzten Abschnitt haben Sie gelernt, wie Sie Verzeichnisse und Dateien unter Linux erstellen. Verwenden Sie zum Entfernen von Verzeichnissen und Dateien den rm Befehl zum Entfernen von Verzeichnissen und deren Inhalten.

Sie möchten beispielsweise eine Datei mit dem Namen ATABlog01. entfernen Entfernen Sie eine Datei, indem Sie den Dateinamen an rm übergeben Befehl. Wie unten zu sehen ist, entfernen Sie das ATABlog01 Datei aus dem aktuellen Verzeichnis.

rm ATABlog01

Sie können mehrere Dateien auf einmal entfernen, indem Sie im aktuellen Verzeichnis zwischen jedem Dateinamen ein Leerzeichen einfügen. Löschen Sie das verbleibende ATABlog## Dateien in einem einzigen rm Befehl, wie unten gezeigt.

rm ATABlog02 ATABlog03 ATABlog04 ATABlog05

Nachdem Sie nun gelernt haben, Dateien zu entfernen, ist es an der Zeit, ein Verzeichnis zu entfernen. Standardmäßig ist die rm Befehl entfernt keine Verzeichnisse. Entfernen Sie ein Verzeichnis, indem Sie den r angeben oder rekursiv Option, wie im folgenden Beispiel zu sehen.

rm -r Directory01

Im Screenshot unten sehen Sie dieses Directory01 wurde entfernt.

Sie können die Klammererweiterung mit dem rm verwenden Befehl auch. Bereitstellung des Bereichs 2 bis 7 innerhalb des rm Der Befehl weist den Befehl remove an, alle Verzeichnisse mit dem Namen Verzeichnis02 zu löschen über Verzeichnis07 . Wie bei Bestätigung durch ls angezeigt Befehl.

rm -r Directory{02..07}

Um zu verhindern, dass versehentlich die falschen Dateien oder Ordner entfernt werden, verwenden Sie den i um für jede Datei aufzufordern. Machen Sie die Option mit dem I weniger belastend Option, die nur bei drei oder mehr Dateien auffordert.

Kopieren von Verzeichnissen und Dateien in Linux

Kopieren Sie Dateien unter Linux mit dem cp Befehl. Das kann nicht nur cp Befehle Verzeichnisse und Dateien in Linux kopieren, aber auch Dateiattribute und symbolische Links erstellen.

Um das Kopieren einer Datei aus den vorherigen Beispielen zu demonstrieren, kopieren Sie den ATABlog Datei in die Dokumente/ Verzeichnis mit dem cp Befehl. Fügen Sie v hinzu Option, um weitere Informationen über den genauen Kopiervorgang anzuzeigen.

cp -v ATABlog Documents/

Kopieren Sie nun den Ordner MyAwesomeLinuxDir , zu den Dokumenten Verzeichnis. Hier wie beim rm Achten Sie darauf, den r hinzuzufügen oder rekursive Option zum Kopieren des Verzeichnisses, wie im folgenden Beispiel zu sehen.

cp -r MyAwesomeLinuxDir/ Documents/

Verzeichnisse und Dateien verschieben

Im vorherigen Abschnitt haben Sie Dateien und Ordner mit dem cp kopiert Befehl. bewegen Verzeichnisse und Dateien unter Linux verwenden Sie den mv Befehl. Verwenden Sie zum Verschieben von Verzeichnissen unter Linux den mv Befehl. Die mv Befehl ist ähnlich dem des cp Befehl, den Sie in den vorherigen Beispielen kennengelernt haben.

mv [options] [source] [destination]

Der mv Befehl ist wie das Ausschneiden und Einfügen in Windows, mit dem Vorteil, Dateien gleichzeitig umbenennen zu können. Die nächsten Abschnitte zeigen Ihnen, wie Sie mv verwenden für beide Szenarien.

Verwenden Sie -i Option zur Eingabeaufforderung vor jedem Zug oder -f Option zum zwangsweisen Verschieben von Elementen ohne Aufforderung.

Verschieben Sie zur Demonstration die Datei Documents/ATABlog auf den Desktop Verzeichnis mit dem mv Befehl. Verschieben Sie den Ordner Documents/MyAwesomeLinuxDir auf den Desktop auch, wie unten gezeigt.

mv Documents/ATABlog Desktop/
mv Documents/MyAwesomeLinuxDir Desktop/

Ihre Befehle sollten wie im Beispiel unten aussehen. Denken Sie daran, dass Sie die Datei und das Verzeichnis (Quelle) in ein anderes Verzeichnis (Ziel) verschieben.

Verwenden Sie den ls Befehl, um zu sehen, dass sich beide jetzt auf dem Desktop befinden Verzeichnis.

Umbenennen von Verzeichnissen und Dateien

Obwohl es keinen Umbenennungsbefehl gibt, ist der mv Befehl spielt die gleiche Rolle. Anstatt nur ein Ziel an mv zu übergeben Befehl die resultierende Datei oder den Ordner ohne nachgestellten Schrägstrich zum Verschieben und Umbenennen an.

Verschieben Sie die Datei und den Ordner zurück in Ihr Home-Verzeichnis, während Sie die Datei in ATABlog_Renamed umbenennen . Machen Sie dasselbe mit MyAwesomeLinuxDir , und benennen Sie das Verzeichnis in MyAwesomeLinuxDir_Renamed um im Home-Verzeichnis, wie unten gezeigt.

mv Desktop/ATABlog ~/ATABlog_Renamed

mv Desktop/MyAwesomeLinuxDir ~/MyAwesomeLinuxDir_Renamed

Nächste Schritte

In diesem Artikel haben Sie viele der gängigen Linux-Verzeichnisbefehle kennengelernt, wie z. B. das Durchlaufen eines Linux-Dateisystems sowie das Erstellen, Verschieben und Löschen von Dateien.


Linux
  1. So installieren Sie Void Linux:Eine vollständige Schritt-für-Schritt-Anleitung

  2. Vollständiges Handbuch zur Verwendung von AsciiDoc unter Linux

  3. Der vollständige Leitfaden für Anfänger zu LVM unter Linux

  4. A bis Z Linux-Befehle

  5. Wie erstelle ich benutzerdefinierte Befehle in Unix/Linux?

Die 10 nützlichsten Linux-Befehle

Vollständige Anleitung zur Installation von OxygenOS auf OnePlus One unter Linux

Vollständiges Handbuch zur Benutzerverwaltung unter Linux

Vollständiges Handbuch zur Linux-Protokollierung

Top 30 Linux-Befehle

Eine vollständige Anleitung zur Installation von Tomcat unter Linux