Hallo,
in einem Verzeichnis habe ich Dateien, die vorhandenen und ehemaligen Usern zugeordnet sind. Bei den Dateien der ehemaligen Usern, erscheint beim Verzeichnislistung dann die alte UID, bei Dateien von vorhandenen Usern der Username.
Ich möchte nun alle Dateien haben, die keinem existenten User mehr zugeordet sind. Dummerweise gibt die stat()-Funktion von Perl immer die UID zurück und den Namen als Rückgabewert gibt es nicht.
Auf der Shell geht es:
mit existenten User:
$ stat lp
File: "lp"
Size: 3727 Blocks: 8 Regular File
Access: (0600/-rw-------) Uid: ( 4/ lp) Gid: (20500/ user)
Device: 821 Inode: 195884 Links: 1
Access: Wed Sep 17 03:24:38 2008
Modify: Mon Jul 30 15:43:57 2007
Change: Mon Jul 30 15:43:57 2007
ohne User:
$ stat post
File: "post"
Size: 7695 Blocks: 16 Regular File
Access: (0600/-rw-------) Uid: (20543/ UNKNOWN) Gid: (20500/ user)
Device: 821 Inode: 195940 Links: 1
Access: Wed Sep 17 03:24:38 2008
Modify: Sat Oct 6 12:27:10 2007
Change: Sat Oct 6 12:27:10 2007
Wie man sieht wird bei existentem User der Name und bei nicht existenten User ein "UNKNOWN" geliefert. Gibt es eine perl-Funktion oder ein Modul daß das auch kann?
Frank