ls -l zeigt die Dateigröße 0 der Dateien in /proc an, aber cat erzeugt Inhalt

ls -l zeigt die Dateigröße 0 der Dateien in /proc an, aber cat erzeugt Inhalt
# cat /proc/version
Linux version 2.6.18-308.8.2.el5.028stab101.1 (root@rhel5-build-x64) (gcc version 4.1.2 20080704 (Red Hat 4.1.2-46)) #1 SMP Sun Jun 24 20:25:35 MSD 2012
# ls -l /proc/version
-r--r--r-- 1 root root 0 Aug 22 10:07 /proc/version

Die Dateigröße wird mit 0 angegeben, aber die Datei hat Inhalt. Wie funktioniert das?

Liegt es daran, dass /proces sich um eine Art virtuelles Dateisystem handelt?

Welcher Befehl könnte die genaue Größe der Dateien in anzeigen /proc?

Antwort1

Das liegt daran, dass Sie sich im procDateisystem befinden. Weitere Informationen finden Sie unterwas ist procfs.

/proc/version, enthält die Linux-Kernel-Version, die Distributionsnummer, die GCC-Versionsnummer (die zum Erstellen des Kernels verwendet wird) und alle anderen relevanten Informationen zur aktuell ausgeführten Kernel-Version.

Das sind keine echten Dateien. Es ist eine praktische Möglichkeit, Prozessinformationen als Dateihierarchie anzuzeigen.


BEARBEITEN:

ich weiß, es ist unrealistisch, aber was soll ich tun, wenn ich die Größe wissen möchte?

Sie erhalten es nicht von ls, aber Sie können es mit folgendem versuchen wc:

# wc -c /proc/version
138 /proc/version

verwandte Informationen