Sobre añadir nuevo usuario

Josep josepgimbernat en cdgir.com
Lun Ene 24 12:38:35 CET 2005


Hola a todos,

despues de mucho buscar he encontrado lo que parece una respuesta interesante
a mi pregunta anterior, con google he podido encontrar el siguiente script
python que podria usar:

#! /usr/bin/env python
import sys, string
    
# (C) Osamu Aoki Sun Aug 26 16:53:55 UTC 2001 Public Domai
# Adaptado del script awk por KMSelf Sat Aug 25 20:47:38 PDT 2001
# Este programa se distribuye SIN NINGUNA GARANTIA.
    
def usages():
    print
    print "Uso:  ", sys.argv[0], " UID_inicial [nombre_archivo]\n"
    print "\tUID_inicial es el ID del primer usuario a agregar.\n"
    print "\tnombre_archivo es el nombre del archivo de entrada.\n"
    print "Si no se especifica, se toma la entrada estandar.\n\n"
    print "Formato del archivo de entrada:\n"
    print "\tnombre apellido contraseña\n"
    return 1
    
def parsefile(startuid):
    #
    # filtrado principal
    #
    uid = startuid
    while 1:
        line = infile.readline()
        if not line:
            break
        if line[0] == '#':
            continue
            (first, last, passwd) = string.split(string.lower(line))  # lo
anterior falla con un # equivocado de parámetros :-)
            user = first[0] + last
            gid = uid
            lineout = "%s:%s:%d:%d:%s %s,,/home/%s:/bin/bash\n" %  \
            (user, passwd, uid, gid, first, last, user)
            sys.stdout.write(lineout)
            +uid
    
if __name__ == '__main__':
    if len(sys.argv) == 1:
        usages()
    else:
        uid = int(sys.argv[1])
        #print "# UID empieza desde: %d\n" % uid
        if len(sys.argv) > 1:
            infilename   = string.join(sys.argv[2:])
            infile = open(infilename, 'r')
            #print "# Leer archivo desde: %s\n\n" % infilename
        else:
            infile = sys.stdin
            parsefile(uid)

pero me pide el UID de cada uno de los usuarios a los que quiero añadir...

y, debido a mi ignorancia sobre el tema os pregunto: hay alguna manera de
saber el último uid que hay en el sistema... porque -supongo- debo poner uids
diferentes a cada usuario que añada y por ello debería conocer el último que
hay, para no sobreescribir o provocar error, ¿me equivoco?.

Alguien conoce la solución a este dilema mio?

Grácias de antemano.

_____________________________________________________________________
Mensaje analizado y protegido, tecnologia antivirus www.trendmicro.es




Más información sobre la lista de distribución Python-es