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 相关文章推荐
使用Python抓取模板之家的CSS模板
Mar 16 Python
Python使用Supervisor来管理进程的方法
May 28 Python
Python编程求解二叉树中和为某一值的路径代码示例
Jan 04 Python
python通过elixir包操作mysql数据库实例代码
Jan 31 Python
python爬取个性签名的方法
Jun 17 Python
使用pip发布Python程序的方法步骤
Oct 11 Python
对python读取CT医学图像的实例详解
Jan 24 Python
python async with和async for的使用
Jun 20 Python
python数据类型可变不可变知识点总结
Mar 06 Python
Python Tkinter实例——模拟掷骰子
Oct 24 Python
python中os.remove()用法及注意事项
Jan 31 Python
使用python将HTML转换为PDF pdfkit包(wkhtmltopdf) 的使用方法
Apr 21 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
example1.php
2006/10/09 PHP
PHP+ajaxfileupload+jcrop插件完美实现头像上传剪裁
2014/06/09 PHP
php自定义hash函数实例
2015/05/05 PHP
JavaScript DOM 学习第九章 选取范围的介绍
2010/02/19 Javascript
WEB 浏览器兼容 推荐收藏
2010/05/14 Javascript
利用腾讯的ip地址库做ip物理地址定位
2010/07/24 Javascript
js动态添加事件并可传参数示例代码
2013/10/21 Javascript
JSON中双引号的轮回使用过程中一定要小心
2014/03/05 Javascript
JQuery实现动态表格点击按钮表格增加一行
2014/08/24 Javascript
node.js中的fs.truncateSync方法使用说明
2014/12/15 Javascript
JavaScript获取各大浏览器信息图示
2015/11/20 Javascript
jQuery插件HighCharts绘制2D带有Legend的饼图效果示例【附demo源码下载】
2017/03/10 Javascript
JS设置手机验证码60s等待实现代码
2017/06/14 Javascript
详解Vue.use自定义自己的全局组件
2017/06/14 Javascript
Angular实现可删除并计算总金额的购物车功能示例
2017/12/26 Javascript
vue 中动态绑定class 和 style的方法代码详解
2018/06/01 Javascript
小试SVG之新手小白入门教程
2019/01/08 Javascript
JS实现的贪吃蛇游戏完整实例
2019/01/18 Javascript
基于ssm框架实现layui分页效果
2019/07/27 Javascript
从零使用TypeScript开发项目打包发布到npm
2020/02/14 Javascript
vue 中this.$set 动态绑定数据的案例讲解
2021/01/29 Vue.js
python使用7z解压apk包的方法
2015/04/18 Python
python实用代码片段收集贴
2015/06/03 Python
PyCharm代码整体缩进,反向缩进的方法
2018/06/25 Python
Django密码系统实现过程详解
2019/07/19 Python
使用python telnetlib批量备份交换机配置的方法
2019/07/25 Python
Python企业编码生成系统总体系统设计概述
2019/07/26 Python
Python使用多进程运行含有任意个参数的函数
2020/05/02 Python
H5离线存储Manifest原理及使用
2020/04/28 HTML / CSS
巴西Mr. Cat在线商店:购买包包和鞋子
2019/09/08 全球购物
数控机械专业个人的自我评价
2014/01/02 职场文书
活动宣传策划方案
2014/05/23 职场文书
大学计划书范文800字
2014/08/14 职场文书
小学科学教学计划
2015/01/21 职场文书
《水浒传》读后感3篇(范文)
2019/09/19 职场文书
python神经网络ResNet50模型
2022/05/06 Python