You are on page 1of 8

TRABAJO DE LINUX II

SHELL SCRIPT CON WILE Y FOR




DIEGO FERNANDO VILLADIEGO ANDRADE




PRESENTADO A

PEDRO GUEVARA



UNIVERSIDAD DE CORDOBA
LORICA- CORDOBA
2011


ACTIVIDAD ELECTIVA LIBRE II
UNIVERSIDAD DE CRDOBA
mplementar los siguientes shellscript:
Utilizando el ciclo while, almacenar en un fichero plano toda la informacin de los
usuarios del sistema. Luego utilizando el ciclo while, recorrer cada lnea del fichero
que contiene la informacin de los usuarios. Se quiere entonces generar un
informe en otro fichero plano de nombre infouser.txt con la informacin de los
usuarios que utilizan la shell bash, los datos que se quieren almacenar de cada
usuario en el fichero infouser.txt deben tener el siguiente formato: UD del usuario,
nombre directorio de trabajo del usuario.
UD: NOBR:root DRCTORO:root
UD:1 NOBR:pedro DRCTORO:homepedro
UD:112 NOBR:postgres DRCTORO:varlibpostgresql
UD:11 NOBR:pedro2 DRCTORO:homepedro2
UD:116 NOBR:firebird DRCTORO:varlibfirebird2.
UD:12 NOBR:fusm DRCTORO:homefusm
Ha 6 usuarios que utilizan la shell bash
Luego de almacenados los datos en infouser.txt se debe mostrar el contenido del
fichero tal como se muestra en el ejemplo anterior. Adems de indicar la cantidad
de usuarios que utilizan la shell bash.
Utilizando el ciclo for, generar un informe en un fichero plano de nombre
actualizar.txt que muestre un listado de todos los paquetes instalados en el
sistema, que estn listos para ser actualizados (upgradeable). ndicar en el
informe la cantidad de paquetes que estn para ser actualizados.
pthon2.5-minimalhard
libvorbisahard
libvorbisenc2hard
libisc35hard
php5hard
............................................
............................................
............................................
Ha 189 paquetes para ser actualizados

Para obtener la informacin requerida dentro de un fichero plano pueden estudiar el uso
de awk cut, estos audaran en la implementacin del shellscript.
Nota: La actividad debe ser enviada mximo en grupos de dos a la direccin de correo
electrnico pedrogsguevara@hotmail.com antes de las 1 P del da 12 de septiembre
de 212. Se debe incluir el cdigo fuente de los scripts, junto con imgenes que
evidencien el buen funcionamiento en el sistema. Adems documentar el cdigo fuente
de cada shellscript en un trabajo (enviar un documento PDF para esta parte).
Primer Shell script
#!/bin/bash
clear
echo ########################
echo # actividad de linux #
echo ########################
chmod +x /etc/passwd
usuarios=cat /etc/passwd | grep bash | cut -d ':' -f 1,1
uid=$ps -ef
shellbash=cat /etc/passwd | grep bash | wc -l
cont=4
while ($shellbash -le 4) do
cont=""
echo "el usuario es " cat /etc/passwd |grep bash |cut -d ':' -f 1.1
>infouser.txt
echo "el uid " ps -ef /etc/passwd | grep bash | cut -d ':' -f 1,1
>>infouser.txt
echo "Hay `cat /etc/passwd | grep bash | wc -l` Usuarios que usan
BASH" >>infouser.txt
cat infouser.txt
fi








Utilizando el ciclo while, almacenar en un fichero plano toda la
informacin de los usuarios del sistema. Luego utilizando el ciclo
while, recorrer cada lnea del fichero que contiene la informacin de
los usuarios. Se quiere entonces generar un informe en otro fichero
plano de nombre infouser.txt con la informacin de los usuarios que
utilizan la shell bash, los datos que se quieren almacenar de cada
usuario en el fichero infouser.txt deben tener el siguiente formato:
UID del usuario, nombre y directorio de trabajo del usuario.
Luego de almacenados los datos en infouser.txt se debe mostrar el
contenido del fichero tal como se muestra en el ejemplo anterior.
Adems de indicar la cantidad de usuarios que utilizan la shell bash.
Shell script 2
#!/bin/bash
clear

echo "D__________________________________D"
echo "los paquetes para instalar "
echo ""
$usu=grep "install" /var/log/dpkg.log | less
$id=grep "install" /var/log/dpkg.log | wc -l
$paquetes=$(dpkg -l)

echo "Hello $USER, this is script3 running."
for i in $id

do

if [ -e $i ]

then

echo $i : paquetes

fi
done

fi

echo " los paquetes " $paquetes "estan instalados " $usu
>>actualizar.txt
echo "los paquetes" grep "install" /var/log/dpkg.log) | wc -l "que
estan listo para instalarse son "

cat -n actualizar.txt




Utilizando el ciclo for, generar un informe en un fichero plano
de nombre actualizar.txt que muestre un listado de todos los
paquetes instalados en el sistema, que estn listos para ser
actualizados (upgradeable). Indicar en el informe la cantidad
de paquetes que estn para ser actualizados
Para obtener la informacin requerida dentro de un fichero
plano pueden estudiar el uso de awk y cut, estos ayudaran en la
implementacin del Shell script.

You might also like