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

Grundlagen der Linux-Befehlszeile – Arbeiten mit Dateien und Verzeichnissen

Dieser Beitrag erklärt, wie man mit Dateien und Verzeichnissen arbeitet. Dazu gehören Aufgaben wie das Auffinden Ihrer Position in der Verzeichnisstruktur, das Anzeigen von Dateiinhalten, das Kopieren und Verschieben von Dateien und Verzeichnissen, das Erstellen und Entfernen von Dateien und Verzeichnissen und das Suchen nach Dateien und Verzeichnissen.

Anzeigen von Verzeichnissen

Ein Verzeichnis ist eine Liste von Verweisen auf Objekte, die Dateien, Unterverzeichnisse und symbolische Links enthalten können. Jede Referenz besteht aus zwei Komponenten:

  • Ein Name :Der Name des Objekts wird verwendet, um das Objekt zu identifizieren und darauf zuzugreifen.
  • Eine Zahl :Die Zahl gibt den Inode an, in dem Informationen über das Objekt gespeichert werden.

Sie können verschiedene Befehle verwenden, um das aktuelle Verzeichnis anzuzeigen, den Inhalt eines Verzeichnisses anzuzeigen und Verzeichnisse zu wechseln.

Was ist ein Inode?

Ein Inode ist eine Liste von Informationen, die sich auf ein bestimmtes Objekt beziehen, wie z. B. eine Datei, ein Verzeichnis oder ein symbolischer Link. Die vom Inode gehaltenen Informationen umfassen die Art des Objekts, über das der Inode Informationen, Berechtigungen, Eigentumsinformationen und die Orte enthält, an denen Daten gespeichert werden.

Ermitteln des aktuellen Verzeichnisses

Der Befehl pwd identifiziert den vollständigen oder absoluten Pfadnamen des aktuellen Arbeitsverzeichnisses.

$ pwd
/home/user

Den Inhalt des Verzeichnisses anzeigen

Der Befehl ls zeigt den Inhalt eines Verzeichnisses an. Die Syntax für den Befehl ls lautet:

$ ls [-options] [filename]

Nachfolgend finden Sie einige Beispiele für die Verwendung des Befehls ls zum Auflisten des Verzeichnisinhalts.

1. Um die Dateien und Verzeichnisse im aktuellen Verzeichnis (/export/home/student) aufzulisten, geben Sie den Befehl ls ohne Argumente ein.

$ ls
file1  file2  file3

2. Um den Inhalt eines bestimmten Verzeichnisses innerhalb des aktuellen Arbeitsverzeichnisses anzuzeigen, geben Sie den Befehl ls gefolgt vom Verzeichnisnamen ein.

$ ls dir1
textfile1  textfile2  textfile3

3. Um den Inhalt eines Verzeichnisses anzuzeigen, das sich nicht im aktuellen Arbeitsverzeichnis befindet, geben Sie den Befehl ls mit dem vollständigen Pfad zu diesem Verzeichnis ein.

$  ls /var/tmp/test
test1  test2  test3

Den Inhalt des Verzeichnisses mit Optionen anzeigen

Der Befehl ls -l zeigt eine lange Liste mit Dateiinformationen an.

Das Folgende ist eine kurze Erklärung der Teile der langen Liste, die in der Abbildung oben angezeigt wird:

  • Das erste Zeichen ist der Dateityp. Es kann eine Datei(-) oder ein Verzeichnis(d) oder ein symbolischer Link(l) usw. sein
  • Die zweiten neun Stellen geben die Dateiberechtigungen an:r bedeutet lesbar, w bedeutet beschreibbar, x bedeutet ausführbar und – bedeutet verweigert.
  • Der dritte Abschnitt (eine Zahl) ist die Anzahl der Links.
  • Der vierte Abschnitt ist der Eigentümer (Benutzer).
  • Der fünfte Abschnitt ist die Gruppe (Benutzer).
  • Der sechste Abschnitt ist die Dateigröße.
  • Der siebte Abschnitt ist das Datum.
  • Der achte Abschnitt ist der Dateiname.

Einige Dateien werden nicht angezeigt, wenn Sie den Befehl ls verwenden. Versteckte Dateien enthalten oft Informationen, die Ihre Arbeitsumgebung anpassen. Der Befehl „ls -la“ listet alle Dateien in einem Verzeichnis auf, einschließlich versteckter Dateien.

$ ls -la
total 1296
dr-xr-x---.  8 root root    4096 May 12 15:25 .
drwxr-xr-x. 23 root root    4096 May 12 15:25 ..
-rw-r--r--   1 root root     139 Apr 14 13:01 a
-rw-r--r--   1 root root    3564 May 12 12:53 .bash_history
-rw-r--r--   1 root root      18 Mar 12 21:32 .bash_logout
-rw-r--r--   1 root root     176 Mar 12 21:32 .bash_profile
-rw-r--r--   1 root root     176 Mar 12 21:32 .bashrc
Hinweis :Ein einzelner Punkt (.) steht für das aktuelle Arbeitsverzeichnis. Der doppelte Punkt (..) stellt das übergeordnete Verzeichnis dar, das das aktuelle Arbeitsverzeichnis enthält.

Der Befehl ls -ld zeigt detaillierte Informationen über ein Verzeichnis an, ohne seinen Inhalt anzuzeigen.

$ ls -ld directory name

Um beispielsweise detaillierte Verzeichnisinformationen für das Verzeichnis dir1 zu erhalten, geben Sie den Befehl ls -ld ein.

$ ls -ld dir1
drwxr-xr-x 2 root root 4096 May 12 15:32 dir1

Um beispielsweise eine rekursive Liste des Inhalts des Verzeichnisses dir1 anzuzeigen, geben Sie den Befehl ls -R dir1 ein.

$ ls -R dir1
dir1:
file1  file2  file3  testdir

dir1/testdir:
textfile1  textfile2  textfile3
Grundlagen der Linux-Befehlszeile – Ausführen von Befehlen über die Befehlszeile

Dateitypen anzeigen

Die Kenntnis des Dateityps kann Ihnen bei der Entscheidung helfen, welchen Befehl oder welches Programm Sie zum Lesen der Datei verwenden möchten. Der Befehl ls -F oder der Befehl file zeigt die Dateitypen an. Zum Beispiel:

$ ls -F
dir1/	dir2/	dir3/	file1	file2	file3

Die folgende Tabelle zeigt die Symbole oder Indikatoren, die bei der Ausgabe des Befehls „ls –F“ verwendet werden.

Indikator Dateityp
* Ausführbar
/ Verzeichnis
#FEHLER! Sockel
@ Symbolischer Link
| First-In-First-Out (FIFO)
Hinweis :Ein symbolischer Link ist ein spezieller Dateityp, der auf eine andere Datei oder ein anderes Verzeichnis verweist.

Der Dateibefehl hilft auch bei der Bestimmung bestimmter Dateitypen. Die Syntax für den Dateibefehl lautet:

$ file filename

Um beispielsweise den Dateityp der Datei „test“ anzuzeigen, geben Sie den file-Befehl ein und geben Sie den Namen der Datei an.

$ file test
test: ASCII text

Die Ausgabe des file-Befehls ist eine der folgenden:

  • Text :Textdateien enthalten ASCII-Text (American Standard Code for Information Interchange), englischen Text, Befehlstext und ausführbare Shell-Skripte.
  • Daten :Datendateien werden von Programmen erstellt. Der Dateibefehl gibt den Typ der Datendatei an, z. B. ein FrameMaker-Dokument, wenn der Typ bekannt ist. Der Dateibefehl gibt an, dass die Datei eine Datendatei ist, wenn der Typ unbekannt ist.
  • Ausführbar oder binär :Ausführbare Dateien umfassen ausführbare 32-Bit-Codedateien und ELF-Codedateien (Extensible Linking Format) sowie andere dynamisch verknüpfte ausführbare Dateien. Ausführbare Dateien sind Befehle oder Programme.

Verzeichnisse wechseln

Beim Arbeiten innerhalb der Verzeichnishierarchie haben Sie immer ein aktuelles Arbeitsverzeichnis. Wenn Sie sich zum ersten Mal beim System anmelden, wird das aktuelle Verzeichnis auf Ihr Home-Verzeichnis eingestellt. Sie können Ihr aktuelles Arbeitsverzeichnis jederzeit mit dem Befehl cd ändern. Um beispielsweise das Verzeichnis vom Studentenverzeichnis in das Verzeichnis dir1 zu ändern, verwenden Sie den cd-Befehl:

$ pwd
/home/user
$ cd dir1
$ pwd
/home/user/dir1
$

Wenn Sie den cd-Befehl ohne Optionen oder Argumente verwenden, wechselt das aktuelle Arbeitsverzeichnis in Ihr Home-Verzeichnis. In der Befehlszeile können Sie Abkürzungen für Pfadnamen verwenden, um einfach zu Verzeichnissen zu navigieren oder auf diese zu verweisen. Die Tabelle beschreibt die Abkürzungen der Pfadnamen.

Symbol Pfadname
. Aktuelles oder Arbeitsverzeichnis
.. Elternverzeichnis, das Verzeichnis direkt über dem aktuellen Arbeitsverzeichnis

Um beispielsweise in das übergeordnete Verzeichnis für dir1 zu wechseln, geben Sie den Befehl cd .. ein.

$ pwd
/home/user/dir1
$ cd ..

Bestätigen Sie das aktuelle Arbeitsverzeichnis mit dem Befehl pwd.

$ pwd
/home/user
Hinweis :Sie können mehrere Ebenen der Verzeichnishierarchie nach oben verschieben, indem Sie den Befehl cd .. gefolgt von einem Schrägstrich (/) verwenden. Zum Beispiel „cd ../../..“

Relativer und absoluter Pfadname

Sie können entweder einen relativen oder einen absoluten Pfadnamen verwenden, um sich in der Verzeichnishierarchie zu bewegen. Ein relativer Pfadname listet die Verzeichnisse im Pfad relativ zum aktuellen Arbeitsverzeichnis auf. Ein absoluter Pfadname listet alle Verzeichnisse im Pfad auf, beginnend mit dem Stammverzeichnis (/).

Um beispielsweise Verzeichnisse mit einem relativen Pfadnamen zu wechseln, geben Sie den Befehl cd mit dem Pfadnamen ein, der vom aktuellen Arbeitsverzeichnis student.

ausgeht
$ cd
$ cd dir1
$ pwd
/home/user/dir1
$ cd ../dir2
$ pwd
/home/user/dir2
$ cd
$ cd dir1/coffee
$ pwd /home/user/dir1/coffee

Um beispielsweise Verzeichnisse mit einem absoluten Pfadnamen zu wechseln, geben Sie den Befehl cd mit dem vollständigen Pfadnamen aus dem Stammverzeichnis (/) ein.

$ cd
$ cd /home/user/dir1/coffee 
$ pwd 
/home/user/dir1/coffee

Home-Verzeichnis

Das Home-Verzeichnis eines normalen Benutzers ist der Ort, an dem sich der Benutzer nach der Anmeldung befindet. Der Benutzer kann Dateien im Home-Verzeichnis erstellen und speichern. Häufig ist der Name des Home-Verzeichnisses eines Benutzers derselbe wie der Anmeldename des Benutzers. Wenn Ihr Benutzer-Anmeldename beispielsweise john ist, wäre Ihr Home-Verzeichnis /home/john.

Zurück zu Ihrem Home-Verzeichnis

Sie können mit einer der beiden folgenden Methoden zu Ihrem Home-Verzeichnis zurückkehren:
1. Verwenden Sie den cd-Befehl ohne Argumente.

$ cd
$ pwd
/home/user

2. Verwenden Sie den cd-Befehl mit dem absoluten Pfadnamen zu Ihrem Home-Verzeichnis.

$ cd /home/user

Sie können auch zum Home-Verzeichnis eines Benutzers navigieren, indem Sie den Befehl cd mit einer Tilde (~) vor dem Benutzernamen verwenden. Die Tilde (~) Zeichen ist eine Abkürzung, die dem absoluten Pfadnamen des Benutzers entspricht.

$ cd ~user
$ pwd
/home/user

Hinweis :Das Tilde-Zeichen (~) ist eine Shell-Einrichtung und nicht in allen Shells verfügbar.

Sie können auch das Tilde-Zeichen (~) verwenden, um Ihr Home-Verzeichnis in einem relativen Pfad darzustellen. Die Tilde (~) im folgenden Beispiel steht für das Home-Verzeichnis des Schülers.

$ cd ~/dir1/coffee

Sie können auch das Tilde-Zeichen (~) verwenden, um zum Home-Verzeichnis eines anderen Benutzers zu navigieren.

$ cd ~user2
$ pwd
/home/user2
$ cd
$ pwd
/home/user1


Linux
  1. Finden Sie Dateien und Verzeichnisse unter Linux mit dem Befehl find

  2. Arbeiten mit Datenströmen auf der Linux-Befehlszeile

  3. So löschen Sie Dateien und Verzeichnisse in Linux über die Befehlszeile

  4. Arbeiten mit Pipes auf der Linux-Befehlszeile

  5. Linux Dateien und Verzeichnisse löschen

So kopieren Sie Dateien und Verzeichnisse unter Linux

So verschieben Sie Dateien und Verzeichnisse in Linux (mv-Befehl)

Linux-CD-Befehl mit Beispielen

Grundlagen der Linux-Befehlszeile:sudo

Linux-Dateien und -Verzeichnisse mit rsync synchron halten

4 Möglichkeiten zum Übertragen von Dateien und Verzeichnissen unter Linux