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

Der Befehl „ls“ listet den neuesten Verzeichnisinhalt nicht auf?

Die Linux-Shell gibt keine aktuellen Informationen aus, wenn es um ls geht. Zum Beispiel verwende ich meine anderen Prozesse (IDEs usw.), um einige Verzeichnisse zu erstellen. Wenn ich jedoch einen ls-Befehl ausführe, sehe ich diese Verzeichnisse nicht. Normalerweise dauert es ein paar Sekunden, manchmal Minuten, bis dieses Verzeichnis in der Ausgabe von ls erscheint.

Was ist los? Kann ich eine Aktualisierung erzwingen? Idealerweise möchte ich, wenn ich „ls“ sage, den Status sehen, als ich den Befehl eingegeben habe, nicht irgendein zwischengespeichertes Ergebnis.

Das Dateisystem ist keine NFS-Freigabe. Das einzige andere, was mir einfällt, ist, dass das Verzeichnis von einem Programm erstellt wurde, als es von Eclipse aus ausgeführt wurde (und die Anzeige an meine lokale Windows-Box weitergeleitet wurde)

Ich weiß aber nicht, wie sich das auf die Dinge auswirken kann?

Akzeptierte Antwort:

ls hat nichts mit bash zu tun oder jede Schale. Es listet den Inhalt eines Verzeichnisses auf, ausgenommen versteckte Dateien (solche, deren Name mit einem . beginnt ), indem Sie diese Liste vom Kernel anfordern

Wenn ls zeigt sie nicht an, dann sind sie nicht vorhanden (was das Betriebssystem betrifft) oder Sie listen das falsche Verzeichnis auf.

Das kann zum Beispiel passieren, wenn das aktuelle Verzeichnis unter Ihren Füßen umbenannt wurde. Wie:

$ pwd
/tmp/1
$ ls
x
$ mv /tmp/1 /tmp/2
$ pwd
/tmp/1 # (/tmp/1 has been renamed but the shell is not aware of it)
$ mkdir /tmp/1
$ touch /tmp/1/y
$ pwd
/tmp/1
$ ls  # (ls is still listing `.` which has not changed, but now is a hardlink to `/tmp/2`, while `/tmp/1` is some new directory)
x
$ pwd -P  # (double check what the current directory is)
/tmp/2
$ cd /tmp/1
$ ls
y

Linux
  1. Rm-Befehl im Bash-Skript funktioniert nicht mit Variablen?

  2. Vsftpd listet den Inhalt eines Verzeichnisses nicht auf?

  3. lsattr:Befehl nicht gefunden

  4. id:Befehl nicht gefunden

  5. w:Befehl nicht gefunden

Du-Befehl unter Linux

mv-Befehl unter Linux

Verschiedene Möglichkeiten zum Auflisten von Verzeichnisinhalten ohne Verwendung des Befehls ls

Wie man Dateien in Linux rekursiv auflistet

ln:Befehl nicht gefunden

Der Linux-Befehl sed ändert die Zieldatei nicht