python实现得到当前登录用户信息的方法


Posted in Python onJune 21, 2019

本文实例讲述了python实现得到当前登录用户信息的方法。分享给大家供大家参考,具体如下:

在linux 环境下,python 更多的被当做 替代 SHELL 的工具语言, 其实linux 中,本身就有很多命令是通过python扩展的,我想记录下一些常用的命令以及使用方式,以便以后查看.

第一部分:python得到得到当前登录用户信息

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 下才有的. 我在网上搜索到了另一个在window 下得到用户组相关信息的方法,但需要安装  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"

得到用户名,当然只是第一步,后面还涉及到修改权限等操作。后面有时间再记录.

希望本文所述对大家基于Django框架的Python程序设计有所帮助。

Python 相关文章推荐
gearman的安装启动及python API使用实例
Jul 08 Python
Python中第三方库Requests库的高级用法详解
Mar 12 Python
详解python上传文件和字符到PHP服务器
Nov 24 Python
TensorFlow神经网络优化策略学习
Mar 09 Python
在pycharm下设置自己的个性模版方法
Jul 15 Python
pyhton中__pycache__文件夹的产生与作用详解
Nov 24 Python
jupyter notebook 实现matplotlib图动态刷新
Apr 22 Python
哪些是python中web开发框架
Jun 17 Python
Python Matplotlib绘图基础知识代码解析
Aug 31 Python
Alpine安装Python3依赖出现的问题及解决方法
Dec 25 Python
java字符串格式化输出实例讲解
Jan 06 Python
利用Python+OpenCV三步去除水印
May 28 Python
python-django中的APPEND_SLASH实现方法
Jun 21 #Python
Python2.7版os.path.isdir中文路径返回false的解决方法
Jun 21 #Python
pyqt5与matplotlib的完美结合实例
Jun 21 #Python
django框架防止XSS注入的方法分析
Jun 21 #Python
pyqt5中QThread在使用时出现重复emit的实例
Jun 21 #Python
python发送多人邮件没有展示收件人问题的解决方法
Jun 21 #Python
pyqt5让图片自适应QLabel大小上以及移除已显示的图片方法
Jun 21 #Python
You might like
php基础知识:类与对象(1)
2006/12/13 PHP
php curl简单采集图片生成base64编码(并附curl函数参数说明)
2019/02/15 PHP
php apache开启跨域模式过程详解
2019/07/08 PHP
php解压缩zip和rar压缩包文件的方法
2019/07/10 PHP
Js中sort()方法的用法
2006/11/04 Javascript
javascript hashtable 修正版 下载
2010/12/30 Javascript
jQuery实现tab标签自动切换的方法
2015/02/28 Javascript
用NODE.JS中的流编写工具是要注意的事项
2016/03/01 Javascript
基于Echarts 3.19 制作常用的图形(非静态)
2016/05/19 Javascript
JavaScript sort数组排序方法和自我实现排序方法小结
2016/06/06 Javascript
AngularJS基础 ng-mouseenter 指令示例代码
2016/08/02 Javascript
jQuery购物网页经典制作案例
2016/08/19 Javascript
JavaScript排序算法动画演示效果的实现方法
2016/10/18 Javascript
javascript中递归的两种写法
2017/01/17 Javascript
vue引入新版 vue-awesome-swiper插件填坑问题
2018/01/25 Javascript
Vue使用mixins实现压缩图片代码
2018/03/14 Javascript
[02:44]DOTA2英雄基础教程 克林克兹
2014/01/15 DOTA
python使用xmlrpc实例讲解
2013/12/17 Python
python中datetime模块中strftime/strptime函数的使用
2018/07/03 Python
Python2 Selenium元素定位的实现(8种)
2019/02/25 Python
Python集中化管理平台Ansible介绍与YAML简介
2019/06/12 Python
使用Python和Scribus创建一个RGB立方体的方法
2019/07/17 Python
使用Python实现 学生学籍管理系统
2019/11/26 Python
Tensorflow的常用矩阵生成方式
2020/01/04 Python
css3 实现滚动条美化效果的实例代码
2021/01/06 HTML / CSS
阿迪达斯意大利在线商店:adidas意大利
2016/09/19 全球购物
荷兰鞋子在线:Nelson Schoenen
2017/12/25 全球购物
中专毕业自我鉴定
2013/10/16 职场文书
门卫人员岗位职责
2013/12/24 职场文书
电子商务自荐书范文
2014/01/04 职场文书
高中生职业规划范文
2014/03/09 职场文书
会计专业自荐信
2014/06/03 职场文书
公司员工离职证明书
2014/10/04 职场文书
2016年党员读书月活动总结
2016/04/06 职场文书
用Python实现Newton插值法
2021/04/17 Python
python用海龟绘图写贪吃蛇游戏
2021/06/18 Python