python實現(xiàn)得到當(dāng)前登錄用戶信息的方法
本文實例講述了python實現(xiàn)得到當(dāng)前登錄用戶信息的方法。分享給大家供大家參考,具體如下:
在linux 環(huán)境下,python 更多的被當(dāng)做 替代 SHELL 的工具語言, 其實linux 中,本身就有很多命令是通過python擴展的,我想記錄下一些常用的命令以及使用方式,以便以后查看.
第一部分:python得到得到當(dāng)前登錄用戶信息
def get_current_user():
try:
# pwd is unix only
import pwd
return pwd.getpwuid(os.getuid())[0]
except ImportError, e:
import getpass
return getpass.getuser()
def get_default_group_for_user(user):
import grp
group = None
try:
gid= pwd.getpwnam(user)[3]
groups = grp.getgrgid(gid)[0]
except KeyError, e:
print( 'Failed to find primary group from user %s' ,user)
return group
注意的是 pwd, grp 模塊只能在linux,unix 下才有的. 我在網(wǎng)上搜索到了另一個在window 下得到用戶組相關(guān)信息的方法,但需要安裝 Python Win32 Extensions 模塊??梢栽谶@里下載 (http://starship.python.net/crew/mhammond/win32/),使用方法如下:
import win32net
import platform
import getpass
#Get current hostname and username
sHostname = platform.uname()[1]
sUsername = getpass.getuser()
#Define account memberships to test as false
memberAdmin = False
memberORA_DBA = False
for groups in win32net.NetUserGetLocalGroups(sHostname,sUsername):
#If membership present, set to true
if groups == 'Administrators':
print "member of admin"
memberAdmin = True
if groups == 'ORA_DBA':
print "member of orA_DBA"
memberORA_DBA = True
#if all true pass, else fail
if (memberAdmin == True) and (memberORA_DBA == True):
print "membership is good"
else:
print "current account does not have the proper group membership"
得到用戶名,當(dāng)然只是第一步,后面還涉及到修改權(quán)限等操作。后面有時間再記錄.
希望本文所述對大家基于Django框架的Python程序設(shè)計有所幫助。
相關(guān)文章
Python+FuzzyWuzzy實現(xiàn)模糊匹配的示例詳解
在日常開發(fā)工作中,經(jīng)常會遇到這樣的一個問題:要對數(shù)據(jù)中的某個字段進(jìn)行匹配,但這個字段有可能會有微小的差異。本文將分享一個簡單易用的模糊字符串匹配工具包:FuzzyWuzzy,讓你輕松解決煩惱的匹配問題2022-04-04
Python中numpy數(shù)組真值判斷的實現(xiàn)
在Python編程中,經(jīng)常需要對數(shù)組進(jìn)行真值判斷,本文就來介紹一下Python中numpy數(shù)組真值判斷的實現(xiàn),具有一定的參考價值,感興趣的可以了解一下2023-09-09
Python使用SQLAlchemy模塊實現(xiàn)操作數(shù)據(jù)庫
SQLAlchemy 是用Python編程語言開發(fā)的一個開源項目,它提供了SQL工具包和ORM對象關(guān)系映射工具,使用SQLAlchemy可以實現(xiàn)高效和高性能的數(shù)據(jù)庫訪問,下面我們就來學(xué)習(xí)一下SQLAlchemy模塊的具體應(yīng)用吧2023-11-11
基于Python下載網(wǎng)絡(luò)圖片方法匯總代碼實例
這篇文章主要介紹了基于Python下載網(wǎng)絡(luò)圖片方法匯總代碼實例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-06-06
關(guān)于win10在tensorflow的安裝及在pycharm中運行步驟詳解
這篇文章主要介紹了關(guān)于win10在tensorflow的安裝及在pycharm中運行的步驟詳解,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-03-03
Python腳本實現(xiàn)Mysql數(shù)據(jù)遷移
MySQL數(shù)據(jù)庫遷移是指將MySQL數(shù)據(jù)庫中的數(shù)據(jù)和結(jié)構(gòu)遷移到另一個MySQL實例,下面小編就來為大家介紹一下如何通過Python腳本實現(xiàn)Mysql數(shù)據(jù)遷移吧2025-03-03

