Linux/Unix Shell Scripting - PROGRAMAR variable de entorno $PS1

   
Vista:

PROGRAMAR variable de entorno $PS1

Publicado por FRANCISCO (11 intervenciones) el 22/01/2012 20:17:12
Buenas tardes, tengo 4 usuarios, los cuales tras una validacion por contraseña (que ya tengo hecha), deberian acceder a su propio PROMPT, con su propio nombre, por ejemplo:
pepe, accederia tras validar a su PROMPT, pepe@pep2/ por ejemplo,...
Se que la confioguracion del PROMPT se guarda en la variable de entorno $PS1, mi duda es como poder modificar para cada usuario, dicha variable, desde un shell, para poder llevar a cabo lo comentado anteriormente..
Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve

PROGRAMAR variable de entorno $PS1

Publicado por xve (254 intervenciones) el 22/01/2012 21:43:58
Hola Francisco, la configuración inicial de cada usuario, es decir, la configuración por defecto que tiene cada usuario cuando creas dicho usuario, el sistema realiza una copia de lo que se encuentra en la carpeta /etc/skel y la pone en la raiz de la carpeta del usuario.

En esa carpeta, estan los archivos (por lo menos en Debian):
1
2
3
4
5
6
7
/etc/skel$ ls -la
total 28
drwxr-xr-x   2 root root  4096 Dec 18 17:20 .
drwxr-xr-x 138 root root 12288 Jan 21 18:36 ..
-rw-r--r--   1 root root   220 Apr 10  2010 .bash_logout
-rw-r--r--   1 root root  3085 Nov 30 12:01 .bashrc
-rw-r--r--   1 root root   675 Apr 10  2010 .profile

Si modificas en el .bashrc la variable PS1 tal como tu indicas, a medida que se vayan creando los usuarios por primera vez, ya tendran la configuración que tu hayas modificado.

Espero que te sirva... comentanos, ok?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve

añadir archivos a la carpeta del usuario

Publicado por xve (254 intervenciones) el 22/01/2012 21:48:00
Se me olvido comentarte Francisco, que si lo deseas, puedes añadir archivos, carpetas, etc... en /etc/skel, de esta manera, cuando crees un nuevo usuario, ya tendrá por defecto lo que hayas copiado en esa carpeta.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

$PS1

Publicado por Francisco (11 intervenciones) el 23/01/2012 18:23:43
Buenas de nuevo, al fin consegui lo que queria, dejo aqui el codigo por si le puede valer a alguien:
De esta manera cambio el PROMPT para cada usuario, guardado en la variable nameuser.

while (test $orden != "salir")
do
echo -e "\n"
echo -n $nameuser"@minishell$ "

read orden param1 param2 param3 param4

leer_orden $orden $param1 $param2 $param3 $param4

done

Uff viendo esto, al fin consigo entender, como me gusta hacer dificil lo facil....
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

PROGRAMAR variable de entorno $PS1

Publicado por Francisco (11 intervenciones) el 23/01/2012 16:21:20
Buenas tardes, ante todo muchisimas gracias.
Pero creo que o no me explique bien que estoy intentando hacer o no me he enterado de tu explicacion:

El caso que tengo que realizar un programa en shell script, una mini-shell, con comandos personalizados y demas.
Bueno, en un principio tengo un txt, dnd se encuentran los nombres de los usuarios que tendran acceso a esa minishell, con sus respectivas claves.
Por lo que en shell script hago la validacion de usuario buscando en el archivo txt si se encuentra dicho nombre, si es así y la clave introducida es correcta, me deberia de saltar el PROMPT, para dicho usuario, x ejmp, para el usuario pepe, su PROMPT seria, pepe@home -->
No se si me he explicado.
Pero de verdad gracias por tu interes.
Un saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar