Anda ingin menggunakan os.stat()
:
os.stat(path)
Perform the equivalent of a stat() system call on the given path.
(This function follows symlinks; to stat a symlink use lstat().)
The return value is an object whose attributes correspond to the
members of the stat structure, namely:
- st_mode - protection bits,
- st_ino - inode number,
- st_dev - device,
- st_nlink - number of hard links,
- st_uid - user id of owner,
- st_gid - group id of owner,
- st_size - size of file, in bytes,
- st_atime - time of most recent access,
- st_mtime - time of most recent content modification,
- st_ctime - platform dependent; time of most recent metadata
change on Unix, or the time of creation on Windows)
Contoh penggunaan untuk mendapatkan UID pemilik:
from os import stat
stat(my_filename).st_uid
Perhatikan, bagaimanapun, bahwa stat
mengembalikan nomor id pengguna (misalnya, 0 untuk root), bukan nama pengguna yang sebenarnya.
Ini adalah pertanyaan lama, tetapi bagi mereka yang mencari solusi yang lebih sederhana dengan Python 3.
Anda juga dapat menggunakan Path
dari pathlib
untuk mengatasi masalah ini, dengan memanggil Path
owner
dan group
metode seperti ini:
from pathlib import Path
path = Path("/path/to/your/file")
owner = path.owner()
group = path.group()
print(f"{path.name} is owned by {owner}:{group}")
Jadi dalam hal ini, metodenya bisa sebagai berikut:
from typing import Union
from pathlib import Path
def find_owner(path: Union[str, Path]) -> str:
path = Path(path)
return f"{path.owner()}:{path.group()}"
Saya bukan orang python, tapi saya bisa menyiapkan ini:
from os import stat
from pwd import getpwuid
def find_owner(filename):
return getpwuid(stat(filename).st_uid).pw_name
Saya menemukan ini baru-baru ini, mencari untuk mendapatkan pengguna dan grup pemilik informasi, jadi saya pikir saya akan membagikan apa yang saya hasilkan:
import os
from pwd import getpwuid
from grp import getgrgid
def get_file_ownership(filename):
return (
getpwuid(os.stat(filename).st_uid).pw_name,
getgrgid(os.stat(filename).st_gid).gr_name
)
Bagaimana saya bisa menemukan semua ekstensi file yang berbeda dalam hierarki folder?
Bagaimana cara menanyakan resolusi tampilan X11?