Die Linux-Shell druckt keine aktuellen Informationen, 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, werden diese Verzeichnisse nicht angezeigt. Normalerweise dauert es einige Sekunden, manchmal Minuten, bis dieses Verzeichnis in der ls-Ausgabe angezeigt wird.
Was ist los? Kann ich eine Aktualisierung erzwingen? Wenn ich "ls" sage, möchte ich im Idealfall den Status sehen, wenn ich den Befehl eingegeben habe, nicht ein 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 ausgeführt wurde (und die Anzeige an meine lokale Windows-Box weitergeleitet wurde).
Ich weiß nicht, wie sich das auf die Dinge auswirken kann.
\/bin/ls
nicht nur versuchtls
, Shell-Builds oder Aliasing-Probleme auszuschließen?Antworten:
ls
hat nichts mitbash
oder irgendeiner Shell zu tun . Es listet den Inhalt eines Verzeichnisses auf, ausgenommen versteckte Dateien (solche, deren Name mit a beginnt.
), indem diese Liste vom Kernel angefordert wirdWenn
ls
sie nicht angezeigt werden, sind sie nicht vorhanden (was das Betriebssystem betrifft) oder Sie listen das falsche Verzeichnis auf.Dies kann beispielsweise passieren, wenn das aktuelle Verzeichnis unter Ihren Füßen umbenannt wurde. Mögen:
quelle