| Ver tema anterior :: Ver tema siguiente |
| Autor |
Mensaje |
iniciadolinux Forista Nuevo


Miembro No. 28674 Registrado: Jul 07, 2008 Mensajes: 1
|
Publicado: Lun Jul 07, 2008 4:42 am Asunto: Ayuda para entender y crear un script sencillo |
|
|
|
Hola me gustaría que alguien me eche una mano con este script:(copio y pego?:
Realizar un script que genere la siguiente salida:
$sh ejercicio.sh
Hola manuel
Hola xuan
Hola ale
Hola ivan
La salida del script es un saludo a los usuarios presentes en el sistema, es decir, los que aparezcan en /home (no debe aparecer en pantalla “Hola /home/manuel”, sino el nombre del usuario “Hola manuel”).
Los nombres de usuario no tienen por que ser los mismos.
Además, aunque vuestro sistema tenga más de 4 usuarios, sólo debe listar 4 de ellos, da igual el orden, pero sólo 4 (máximo 4 líneas de salida del script).
He hecho lo siguiente:
NUM=0
while [$NUM lt 4]; do
salida_ls=`ls home`
echo "hola $salida_ls"
let NUM=NUM+1
done
he hecho un bucle while para que liste hasta 4la salida de home, pero no sé como hacer para que no me repita las lineas del directorio.
Estoy verde en estas lides, agradecería que me ayudaran lo antes posible.
Muchas gracias de antemano.  |
|
| Volver arriba |
|
 |
fjpenis Forista Nuevo


Miembro No. 28673 Registrado: Jul 07, 2008 Mensajes: 2
|
Publicado: Lun Jul 07, 2008 5:01 am Asunto: Re: Ayuda para entender y crear un script sencillo |
|
|
|
Creo que esto te servirá:
for i in `ls /home`; do
echo "Hola $i"
done |
|
| Volver arriba |
|
 |
akodo Forista Medio


Miembro No. 25400 Registrado: Nov 28, 2007 Mensajes: 189
|
Publicado: Sab Jul 12, 2008 12:42 pm Asunto: Re: Ayuda para entender y crear un script sencillo |
|
|
|
Lo de salida_ls debería estar fuera del bucle while, ya que es tontería hacer 4 veces lo mismo.
Como seguramente el comando ls te deje más de un usuario lo que puedes hacer dentro del bucle es asignar el usuario/cadena_ls numero i a otra variable. | Código: | | nueva_var=${salida_ls[i]}; |
Aún así deberías estar seguro de que es un directorio con nombre de usuario y no un archivo de texto u otro directorio.
Yo preferiría intentar hacerlo a partir del fichero passwd, eliminando posibles no-usuarios. |
|
| Volver arriba |
|
 |
fd0 Forista Medio


Miembro No. 21649 Registrado: May 29, 2007 Mensajes: 112 Ubicación:
/dev/world/argent
ina/cordoba
|
Publicado: Lun Jul 14, 2008 12:54 pm Asunto: Re: Ayuda para entender y crear un script sencillo |
|
|
|
un for i in $(ls /home) con un counter incremental y un print de la var i adentro, si counter es == a 4 then exit. y listo.
Saludos _________________ Linux user #474183 (Security Analyst, CCNA) |
|
| Volver arriba |
|
 |
|