@ -Zeichen nach einem symbolischen Linkverzeichnis in puTTy


4

Was bedeutet das @ -Zeichen in puTTy, wenn es direkt hinter einem Verzeichnis steht?

Ex.

pdf/
public_html/
video@

Es handelt sich um eine symbolische Verknüpfung, auf einem anderen Server ist jedoch hinter derselben symbolischen Verknüpfung kein @ -Zeichen angegeben.

linux  unix 

2
PuTTY ist nur ein Terminalprogramm und hat nichts mit dem zu tun, mit dem es verbunden ist. Sie fragen tatsächlich nach dem Format des lsBefehls, der in einer Shell ausgeführt wird, die Sie mit PuTTY aufrufen.
Ether

Antworten:


6

Es ist der Unterschied zwischen:

$ ls

und

$ ls -F

aber es ist kein Kitt.


Was bedeutet es? Ich verstehe, dass es 2 Arten von symbolischen Links gibt, die ich mit ls -s / source / dest erstellt habe, aber auf dem alten Server hatte dasselbe Verzeichnis kein @ -Zeichen.

1
Lesen Sie "man ls", die maßgebliche Informationsquelle zum Befehl ls. Dies kann bedeuten, dass ls ein Alias ​​für eines Ihrer Konten ist, das andere jedoch nicht.
Paul Beckingham

1

Ich weiß, dass dies beantwortet wurde, aber ich möchte einige Details hinzufügen, und es ist schwierig, große Erklärungen in einem Kommentarfenster zu geben.

Der lsBefehl verwendet das -FFlag, mit dem bestimmte Dateitypen mit nachgestellten Zeichen versehen werden. Verzeichnisse nehmen ein /, ausführbare Dateien *, Symlinks @. Wenn Sie lsauf zwei Rechnern tippen und auf beiden das gleiche Dateisystem betrachten, aber unterschiedliche Dinge sehen, haben Sie vermutlich einen Alias ​​oder eine Funktion für lseinen, der nicht mit dem anderen übereinstimmt. Auf beide Maschinen geben , type lsund ich wette , Sie verschiedene Ausgabe auf beiden Maschinen.

Außerdem sprechen Sie in Ihrem Kommentar über harte Links und Symlinks. Sie sind sehr verschieden. Ein Symlink ist ein Zeiger auf eine Datei oder ein Verzeichnis. Es ist einer Verknüpfung in Windows sehr ähnlich (obwohl UNIX es besser gemacht hat als Windows, das es schlecht kopiert hat). Es kann überall zeigen; Auf dieser Festplatte, auf einer anderen Festplatte. Sogar das, worauf es hinweist, kann da sein oder nicht. Wenn ich einen Symlink habe, der auf eine Datei / ein Verzeichnis verweist, die / das nicht existiert, wird dies als baumelnder Symlink bezeichnet.

Ein fester Link ist der Name der Datei. Stellen Sie sich eine Datei vor, die aus zwei Teilen besteht. Es gibt die Daten, die tatsächlichen Informationen, die Sie in die Datei einfügen. Dein Text, Lied, was auch immer. Oder nichts für eine leere Datei. Denken Sie dann an die Metadaten, Informationen zu Ihrer Datei. Wie heißt es? Um welche Art von Datei handelt es sich (Datei, Verzeichnis, FIFO, Symlink usw.)? Wann habe ich das letzte Mal darauf geschrieben? Welche Dateiberechtigungen gibt es? Diese Metadaten sind die feste Verbindung. In UNIX gibt es keine Eins-zu-eins-Beziehung zwischen diesen Metadaten für Namen und andere Dinge und der eigentlichen Datei. Ich kann mehrere dieser Links erstellen - unterschiedliche Namen, unterschiedliche Standorte, unterschiedliche Berechtigungen. Dies wird als Hardlinking bezeichnet. Das System erstellt beim Erstellen einer Datei immer eine dieser festen Verknüpfungen, hard-linkingverweist jedoch normalerweise nur, wenn Sie manuell eine andere mit erstellenln. Ein fester Link kann sich nur im selben Dateisystem wie die Daten befinden, ein weiterer Unterschied zu symbolischen Links. Auf Linux-Systemen können Sie auch keine festen Verknüpfungen zu Verzeichnissen erstellen, da dies zu Schleifen in der Verzeichnisstruktur führen und echte Probleme verursachen kann (MacOSX entspannt dies ein wenig, da es feste Verknüpfungen verwendet, um Time Machine (tm) -Sicherungen unsichtbarer zu machen der Benutzer).


2
Harte Links führen zu Inodes, nicht direkt zu den Daten. Der Inode enthält die Berechtigungsbits, die Benutzer- und Gruppeneigentümer, die Zeitstempel usw. und Verknüpfungen zu den Datenblöcken. Jeder feste Link zu derselben Datei hat daher die gleichen Berechtigungen. Die Metadaten sind nicht die feste Verbindung. Jeder Verzeichniseintrag ist ein (fester) Link. Jeder Link verweist auf einen Inode (die Metadaten). Die Inode verweist auf die Daten selbst.
Chris Johnsen

0

Geben Sie ein man ls, um Informationen zur Bedeutung der Symbole zu erhalten, die beim Auflisten von Dateien angegeben werden. @bedeutet, dass die Datei eine symbolische Verknüpfung ist .

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.