[FIXED] Wie wird die Stat-Funktion in Perl verwendet?

Ausgabe

Kann mir jemand helfen, die Bedeutung der folgenden Zeile zu verstehen?

#!/usr/bin/perl

use File::stat;

...

sub rootdev { return (stat readlink)[0] == (stat "/")[0]; }
my @vols = shuffle map {/.*\/([0-9]+)/} grep {not rootdev} grep {-e readlink} grep {-l} glob("/dev/shm/v/*");

...

Es gibt ein Untermodul wie oben, aber ich kann die Bedeutung von nicht verstehen stat readlink)[0] == (stat "/")[0].

Lösung

Ich habe die Antwort bekommen.

Der Eingang des Submoduls rootdevist grep {-e readlink} grep {-l} glob("/dev/shm/v/*").

Holen Sie sich also zuerst die Dateiliste aus dem /dev/shm/v/Verzeichnis und filtern Sie grepnur nach Symlink.

Überprüfen Sie dann die Geräte-ID (erste Array-Info der statFunktion) und vergleichen Sie sie mit dem Root-Gerät.

Es dient dazu, das gezeigte Gerät des Symlinks zu überprüfen, ob /dev/shm/ves sich um ein Root-Gerät handelt oder um nichts einzuschließen oder auszuschließen.


Beantwortet von –
Hardguy


Antwort geprüft von –
David Marino (FixError Volunteer)

0 Shares:
Leave a Reply

Your email address will not be published. Required fields are marked *

You May Also Like