Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung Nächste Überarbeitung | Vorherige Überarbeitung Nächste Überarbeitung Beide Seiten, nächste Überarbeitung | ||
admin_grundlagen:dateitypen [2011/06/12 09:21] ingo_wichmann |
admin_grundlagen:dateitypen [2020/12/04 14:31] holger_jakobs [Verzeichnis] |
||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
====== Dateitypen ====== | ====== Dateitypen ====== | ||
+ | |||
+ | Folgende Dateitypen gibt es: | ||
+ | |||
+ | ^ Abkürzung ^ Dateityp ^ | ||
+ | | f | gewöhnliche Datei | | ||
+ | | d | Verzeichnis | | ||
+ | | l | symbolischer Link | | ||
+ | | b | Blockorientiertes Gerät | | ||
+ | | c | Zeichenorientiertes Gerät | | ||
+ | | p | Benannte Pipe (FIFO) | | ||
+ | | s | Socket | | ||
+ | |||
+ | Diese Abkürzungen können bei der Option ''-type'' von ''find'' verwendet werden. Sie stehen in | ||
+ | der Ausgabe von ''ls -l'' ganz links (lediglich bei gewöhnlichen Dateien steht dort ''-'' statt ''f''. | ||
+ | |||
+ | Welche Dateitypen finden sich z.B. unter ''/dev'': | ||
+ | find /dev -printf '%y\n' | sort | uniq -c | ||
+ | |||
===== Normale Datei ===== | ===== Normale Datei ===== | ||
touch datei | touch datei | ||
> datei | > datei | ||
- | ===== Verzeichnisse ===== | + | |
+ | Der wesentliche Unterschiede besteht, falls ''datei'' bereits existiert. ''touch'' ändert den Dateiinhalt nicht, sondern aktualisiert lediglich die Zeitstempel. ''>'' überschreibt die Datei mit leerem Inhalt, die Größe ist anschließend also 0 Bytes. | ||
+ | |||
+ | vgl. [[hardlink]] | ||
+ | |||
+ | ===== Verzeichnis ===== | ||
mkdir verzeichnis | mkdir verzeichnis | ||
- | ===== Symbolische Links ===== | + | Falls ein Verzeichniseintrag mit dem Namen bereits besteht, erscheint eine Fehlermeldung. |
- | ln -s /tmp symlink | + | |
- | ==== Symlinks und find ==== | + | mkdir -p pfad/zu/einem/verzeichnis |
- | mkdir vorher nachher linkdir | + | Hier werden auch bei Bedarf alle Zwischenverzeichnisse bis zum ''verzeichnis'' erstellt. Falls diese oder auch das ''verzeichnis'' bereits existieren, passiert nichts. |
- | touch nachher/datei | + | |
- | ln -s linkdir/symlink ../vorher/datei | + | |
| | ||
- | Alle Links in ''linkdir'' finden, die auf ''vorher'' zeigen und auf ''nachher'' umbiegen: | + | ===== Symbolischer Link ===== |
- | find linkdir/ -type l -lname '../vorher/*' -printf '%f/%l\n\0' | while IFS=/ read -d $'\0' link target; do echo "ln -sf $link ../nachher${target#../vorher}"; done | + | ln -s /tmp symlink |
- | ===== Gerätedateien ===== | + | |
+ | vgl. [[Symbolische Links]] | ||
+ | |||
+ | ===== Gerätedatei ===== | ||
mknod cdev c 5 3 | mknod cdev c 5 3 | ||
mknod bdev b 3 7 | mknod bdev b 3 7 | ||
- | ===== Named Pipes ===== | + | ===== Named Pipe ===== |
mkfifo /tmp/named-pipe | mkfifo /tmp/named-pipe | ||
- | ===== Sockets ===== | ||
- | (leider kein einfaches Beispiel) | ||
+ | Vgl. [[admin_grundlagen:named pipe]] | ||
+ | ===== Socket ===== | ||
+ | ( CentOS 7, nicht in der Version von Debian 6.0 ) | ||
+ | |||
+ | Server: | ||
+ | nc -l -U /tmp/socket | ||
+ | |||
+ | Client: | ||
+ | nc -U /tmp/socket |