Ich möchte ein Programm schreiben, welches mir Anzeigt welcher Nutzer Daten in einer Ordnerstruktur abgelegt hat.
Ist das möglich?
Datei Ersteller auslesen?
- DeaD_EyE
- User
- Beiträge: 1244
- Registriert: Sonntag 19. September 2010, 13:45
- Wohnort: Hagen
- Kontaktdaten:
Leider kenne ich keine einfache Lösung.
Mit pywin32:
Edit: Die if/else Verzweigung kann man weglassen, in man das als Modul abspeichert und dann in einem anderen Modul bedingt importiert, wie es im Beispielcode steht, aber halt kürzer. Nachteil ist aber, dass man pywin32 benötigt und ggf. es durch die Änderung zu weiteren unerwarteten Problemenm unter Windows vorkommen können. Es ist z.B. nicht group implementiert.
Ohne pywin32: https://stackoverflow.com/questions/808 ... ut-pywin32
Ehrlich gesagt, will ich das nicht anpassen
Mit pywin32:
Code: Alles auswählen
import pathlib
import platform
if platform.system() == "Windows":
from win32api import GetUserNameEx
from win32con import NameSamCompatible
from win32security import OWNER_SECURITY_INFORMATION, GetFileSecurity, LookupAccountSid
# def whoami() -> str:
# return GetUserNameEx(NameSamCompatible).rpartition("\\")[2].strip()
def get_owner(file: str | pathlib.Path) -> tuple[str, str]:
"""
Return owner and domain of current file.
"""
file = str(file)
owner_sid = GetFileSecurity(
file,
OWNER_SECURITY_INFORMATION,
).GetSecurityDescriptorOwner()
name, domain, _ = LookupAccountSid(None, owner_sid)
return name, domain
class WindowsPath(pathlib.WindowsPath):
def owner(self):
return get_owner(self)[0]
def Path(*args, **kwargs):
path = pathlib.Path(*args, **kwargs)
if isinstance(path, pathlib.WindowsPath):
return WindowsPath(path)
return p
else:
Path = pathlib.Path
Ohne pywin32: https://stackoverflow.com/questions/808 ... ut-pywin32
Ehrlich gesagt, will ich das nicht anpassen

sourceserver.info - sourceserver.info/wiki/ - ausgestorbener Support für HL2-Server
- __blackjack__
- User
- Beiträge: 14078
- Registriert: Samstag 2. Juni 2018, 10:21
- Wohnort: 127.0.0.1
- Kontaktdaten:
@sparrow: Unter nicht-Unix bekommst Du bei der Methode ein NotImplementedError("Path.owner() is unsupported on this system") oder technisch etwas präziser unter Systemen die kein `pwd`-Modul in der Standardbibliothek haben.
“Vir, intelligence has nothing to do with politics!” — Londo Mollari
-
- User
- Beiträge: 1
- Registriert: Sonntag 26. Dezember 2021, 20:07
moin ich habe mal eine frage,
ich möchte aus einer txt liste von Namen die untereinander geschrieben sind nacheinander eine Person raus schreiben und unten in "username" einfügen.
ich möchte aus einer txt liste von Namen die untereinander geschrieben sind nacheinander eine Person raus schreiben und unten in "username" einfügen.
Code: Alles auswählen
#var für die DM liste
DMList = open('textdatei.txt', 'r')
for zeile in DMList:
#username list
usernames = ['DMList']