添加用户附加组

#!/usr/bin/env python
#support to add more than two groups
import os
import sys
userNameElements = []
userNameGroup = userName.split()
#同时可添加多个用户,以空格符分隔
userName = raw_input('Please enter user\'s name:')
passwdFile = open('/etc/passwd','r')
passwdFileLine = passwdFile.readlines()
groupFile = open('/etc/group','r')
groupFileLine = groupFile.readlines()
for userNameElement in userNameGroup:
    if userNameElement.lower() == 'root':
        print 'User root has no need to be added, please check again!'
        sys.exit()
    for userNameLine in passwdFileLine:
        userName_s = userNameLine.split(':')[0]
        if userNameElement == userName_s:
            userNameElements.append(userNameElement)
        passwdFile.close()
#判断是否存在添加用户,root用户;以及需要添加组
while len(userNameElements) >= 1:
    addGroup = raw_input('Found user in system, do you want to add effective group?(y/n):')
    if addGroup.lower() == 'y':
        inputGroup = raw_input('Please enter groups which you want to added:')
        if inputGroup == 0:
            print 'Sorry, you have no permission to add root group'
        else:
            for systemGroupNames in groupFileLine:
                systemGID = systemGroupNames.split(':')[2]
                systemGroupName = systemGroupNames.split(':')[0]
                if inputGroup == systemGroupName or inputGroup == systemGID:
                    for inputName in userNameElements:
                        os.system('usermod -G %s %s' %(inputGroup,inputName))
                        print '%s has been add GID %s successfully' %(inputName,inputGroup)
                    break
                else:
                    continue
    elif addGroup.lower() == 'n':
        print 'see ya!'
    else:
        print 'Unknown option, please confirm it'
    sys.exit()
else:
    print 'Didn\'t find user in system'
    sys.exit()


你可能感兴趣的:(python,linux附加组)