EJERCICIOS. 2) Hacer un script que muestre información sobre los parámetros del programa. (params.sh)

Documentos relacionados
100 ejercicios básicos sobre Linux

Shell Script Sistemas Operativos III - ITS EMT - CETP

Estructuras de Control. Cecilia Curlango Rosas

$0 Representa al parámetro cero o nombre del programa $1 Representa al parámetro uno $2 Representa al parámetro dos

LINUX - Los archivos de órdenes I

MANUAL DE INSTALACIÓN DEL DIMM ANEXOS Y FORMULARIOS Linux

Curso de administración de sistemas GNU/Linux Módulo de Bash scripting Construcciones if-then-else-fi y comparaciones.

Programación shell en Unix/Linux sh, ksh, bash (con ejercicios corregidos) (3ª edición)

LINUX - El intérprete de órdenes II

PREGUNTAS Y RESPUESTAS RELATIVAS AL USO DE COMANDOS BÁSICOS EN LINUX

LINUX Comandos vía terminal (Tema 13)

Programación shell-scripts 1 LA SHELL

How to 5 Creación de usuarios y grupos

Sistemas Operativos sesión 13: shell-scripting

Programación shell en Unix/Linux ksh, bash, sh (con ejercicios corregidos) (4ª edición)

donde <directorio> es el nombre del directorio al que queremos ingresar.

Nociones de informática. Qué es una computadora? GNU/Linux. Lo mínimo que hay que saber para empezar a trabajar con una computadora del aula

Manual de instalación de la Base de Datos fenitel.net en gnulinex 2004r1.

UNIDAD DIDACTICA 3 REDIRECCIONAMIENTO Y TUBERIAS

Introducción a Linux. El regreso a los años 70: la consola (III)

Creacion de Script. Que es un Script?

Ordenador local + Servidor Remoto

PROGRAMACIÓN DE LA SHELL DE UNIX/LINUX

Linux Principios básicos de uso del sistema [4ª edición]

Programación con bash

Borra el fichero hola.txt -rf Borra el fichero/directorio sin pedir confiramación

Comandos. Sistemas Operativos III - ETB EMT - CETP

Sistema de archivos. El sistema de archivos tiene una serie de directorios estándar:

PROGRAMACIÓN DEL SHELL

MANUAL EN ESPAÑOL. Ángel Turrado

Manual de Usuario para el acceso a las red Eduroam

Como crear usuarios y grupos, añadirles permisos.

Que es el Shell? Kernel. Other programs. csh. bash. X window

1. Comandos Básicos Linux

Instalación Imaxe Abalar Libre v1.5

Ejercicios sistemas Linux 100 primeros

Y añado también los 2 profesores al grupo de profesores mediante el comando:

Utilidades de ficheros: Texto, binarios y genéricas - Revision : 1,9

Existe en cualquier sistema operativo parecido a UNIX y forma parte de la instalación predeterminada de Linux.

MANUAL DEL AULA VIRTUAL CON LA APLICACIÓN DE ADOBE CONNECT VERSIÓN PARA EL ALUMNO

Instituto Tecnológico de Las Américas (ITLA)

COMPILACIÓN Y DISCOS DE DISTRIBUCIÓN DE UNA APLICACIÓN

REDATAM WEB SERVER. Como cargar e instalar la aplicacion en un servidor local

INSTRUCCIONES PARA INSTALACIÓN Y REGISTRO DE LINKCFDI DESCARGA DE LA APLICACIÓN INSTALACIÓN DE LA APLICACIÓN

This obra by Sergio Belkin is licensed under a Creative Commons Atribución-CompartirDerivadasIgual 2.5 Argentina License. Procesos.

Guía de usuario de CardioChek Link

IBM SPSS Statistics Versión 22. Instrucciones de instalación para Linux (Licencia concurrente)

Tema 2: Sistemas Operativos. Linux

Comandos del administrador

Creación de Scripts. Qué es un script? Como funciona un shell script en Linux?

Xuxen Chrome xuxen.eus Última actualización: 2016/01/29. Xuxen Chrome

CÓMO INGRESAR A SU CORREO INSTITUCIONAL?

INSTITUTO ELECTORAL DEL ESTADO DE MÉXICO SECRETARÍA EJECUTIVA UNIDAD DE INFORMÁTICA Y ESTADÍSTICA

Prácticas de Fundamentos del Software

Implantación de Webmin

Certificación LPIC-1, examen

66.69 CRIPTOGRAFÍA Y SEGURIDAD INFORMÁTICA

Configuración de MySQL con NetBeans

Actividad 1: Utilización cliente FTP (mediante línea de comandos, entornos gráficos y navegadores/exploradores) (I).

Creación de imágenes. Pablo Sanz Mercado.

INTEGRACIÓN DE SISTEMAS OPERATIVOS EN RED Y PROPIETARIOS. Víctor Martín Martín

PRACTICAS DE SERVICIOS DE RED E INTERNET

PubliClick Manual de Usuario

Facultad de Ingeniería Universidad de Buenos Aires Sistemas Operativos Lic. Ing. Osvaldo Clúa Lic. Adrián Muccio.

Usuarios, Grupos y Permisos en GNU/Linux

Administración de usuarios y grupos en Debian {Terminal}

Importar y exportar el certificado digital usando Internet Explorer

Interprete comandos de Windows.

V Que es? Acceder a Trabajando en Información adicional. Que es?

Comandos básicos MS-DOS

GUIA DE L ABORATORIO N 05. OBJETIVO: Conocer el entorno de Linux, características y componentes más importantes. Manipular la consola del sistema.

1. Deshabilitar bloqueador de elementos emerxentes Deshabilitar bloqueador de elementos emergentes

1. Investigar 5 programas para borrar y 3 opciones. Basta usar el comando apropos delete para ver los comandos que están relacionados con borrar.

Fedora Core GNU/LINUX

P1. Comandos básicos de Unix, editor de textos (joe) y procesos en C.

1. Cómo asignar una IP a mi ordenador? 2. Cómo hago para ver los archivos del directorio anterior? 3. Cómo sé en qué directorio estoy? 4.

LINUX - El intérprete de órdenes I

Sesión 1. Comandos básicos. Curso 09/10. Fernando Rincón Escuela Superior de Informática Universidad de Castilla-La Mancha

UNIDAD DIDACTICA 6 PERMISOS DE LOS ARCHIVOS

MANUAL INSTALACIÓN Y USO CERTIFICADO DÍGITAL EN OUTLOOK 2003.

PUBLICAR FICHEROS VIA FTP EN EL SERVIDOR DEL CETT

Laboratorio de Sistemas Operativos. Ingenierías Técnicas en Informática de Sistemas y Gestión 2006/2007

UNIDAD III PRESENTACIÓN CON DIAPOSITIVAS

Taller de programación shell

labs Linux para Administradores de Elastix Elastix Certification ELASTIX CERTIFICATION

Manual de usuario de Kiva

Manual de Instalación Declaración y Liquidación Modelos

El sistema operativo Linux

Tema: SSH. Contenidos. Objetivos Específicos. Materiales y Equipo. Introducción Teórica. Bibliografía. Seguridad en redes.

El Sistema Operativo Linux

Laboratorio de Sistemas Operativos

Examen Final de Teoría. Grupo de teoría:

UNIDAD DIDACTICA 17 RECURSOS COMPARTIDOS CON SAMBA EN UN CONTROLADOR DE DOMINIO LINUX SERVER

MANUAL COPIAS DE SEGURIDAD

MANUAL DE SOLICITUD, AUTORIZACIÓN Y CANCELACIÓN DE ROLES EN RHNET

DISPONE DE 50 MINUTOS PARA REALIZAR EL EJERCICIO

Sistemas operativos. Qué es un sistema operativo?

Es la estructura que permite ejecutar los comandos solamente si se cumple una determinada condición. La sintaxis más usual:

Manual de Instalación

INSTALACION DE WINDOWS 98

Transcripción:

EJERCICIOS 1) Escribir un script (while.sh) que muestre una lista de números del 1 al 10 usando un blucle while. Hacer lo mismo, con un bucle for. (for.sh) while.sh for.sh i=0 for i in 1 2 3 4 5 6 7 8 9 10 do echo $i done 2) Hacer un script que muestre información sobre los parámetros del programa. (params.sh) echo "A continuacion mostrarase diversa informacions sobre os do programa" paramentros echo "O numero de paramentros e : $#" echo "Todolos paramentros son : $@" 3) Crear una librería (lib.sh) que contenga tres funciones para mostrar un mensaje recibido como parámetro. A continuación se muestran los detalles de estas funciones: a. error: muestra el mensaje en rojo negrita b. infor: muestra el mensaje en azul negrita c. success: muestra el mensaje en verde negrita tupt setaf 1 = ROJO tput setaf 2 = VERDE tput setaf 4 = AZUL tput bold = NEGRITA tput sgr 0 = RESTABLECER VALOR POR DEFECTO

echo "Como quiere mostrar el mensaje" echo "R para rojo" echo "A para azul" echo "V para verde" read op txtrst=$(tput sgr0) # Text reset txtylw=$(tput setaf 1) # Yellow txtblu=$(tput setaf 4) # Blue txtgrn=$(tput setaf 2) # Green case "$op" in R r)echo echo " ${txtylw} $@ ${txtrst}." ;; A a) echo " ${txtblu} $@ ${txtrst}.";; V v) echo " ${txtgrn} $@ ${txtrst}." ;; esac 1) Hacer un script que borre un archivo o directorio pasado como parámetro. Si el parámetro es un directorio, se borrarán todos los archivos y directorios que contenga. (borrar.sh)

#/!bin/bash if [ -f $1 ] `rm $1` elif [ -d $1 ] `rm -r $1` 2) Hacer un script que reciba como parámetro el nombre de un archivo y muestre si existe o no, y los permisos que el usuario que ejecuta el script tiene sobre él (permisos.sh). NOTA: se puede saber usando la orden TEST. if [ $# -eq 1 ] if [ -f $1 ] echo "Os permisos de usuario do cheiro son :" if [ -w $@ ] echo "Permisos de escritura" if [ -x $@ ] echo "Permisos de execucion"

if [ -r $@ ] echo "permisos de lectura" echo "Non existe i e un cheiro" echo " Mais de un parametro" 3) Reescribir el comando cp (cp.sh), mostrando un error si el comando falla, o mostrando un mensaje de éxito en otro caso (hacer uso de la librería creada en el anterior ejercicio, lib.sh). #Non fago uso da librería, pero se se quixese incluir pos.nome_librería na parte darriba do script 4) Escribir un script que permita elegir entre 3 opciones: ver un listado del directorio actual, mostrar los usuarios conectados o salir del programa. echo "Agora vaise mostrar un menu" echo "1) Facer un listado do directorio particular " echo "2) Mostrar os usuarios conectados ao sistema " echo "3) Sair" echo "Introduza unha opcion" read opcion if echo $opcion grep -Eq '^ $' [ "$opcion" -eq 1 ] [ "$opcion" -eq 2 ] [ "$opcion" -eq 3 ] 1) ls ;; case $opcion in

2) who ;; 3) exit 0 ;; esac 5) Hacer un script que haga una copia de seguridad (tar -czf) de la carpeta personal del usuario que ejecuta el script, y guarda el resultado en la carpeta /tmp, con el nombre de archivo (fecha)_backup.tar.gz tar -czvf /tmp `date +%D`.tar.gz $HOME

Ampliación del ejercicio 8 (Para aquellos que quieran saber más sobre el tema, es totalmente opcional): Instalar el servidor de correo mutt, en caso de que no esté ya instalado. Ver el manual para el envío de correos con cheros adjuntos, y enviar un script que hayáis hecho a vuestro correo. 6) Escribir un script que muestre los permisos de los archivos y directorios pasados como parámetro. Posteriormente, mostrar otro listado con el tamaño que ocupan en caso de ser archivos (que sea legible, en KB, MB, etc.) if [ $# -eq 1 ] if [ -f $1 ] echo "Os permisos de usuario do cheiro son :" if [ -w $@ ] echo "Permisos de escritura" if [ -x $@ ] echo "Permisos de execucion"

if [ -r $@ ] echo "permisos de lectura" echo "Non existe i e un cheiro" echo " Mais de un parametro" 7) Escribir un programa que muestre el contenido del chero de usuarios (situado en /etc/passwd) o el contenido del chero de contraseña (situado en /etc/shadow, sin permiso de lectura, por lo que será requisito imprescindible que el script sea ejecutado por root) Ejemplo de llamadas válidas al programa: Mostrar chero - tipo contraseñas - tipo usuarios if [ $# -ge 2 ] if [ "$1" = "-tipo" ] while [ $# -ne 0 ]

do shift if [ "$1" = "usuarios" ] cat /etc/passwd if [ "$1" = "contraseña" ] if [ `whoami` = "root" ] cat /etc/shadow root" echo "Error. No eres done 8) Mostrar todos los archivos de tu directorio particular (y subdirectorios) que tengan premisos de ejecución para el usuario, grupo y otros usuarios (usar grep para ello, no TEST esta vez). ls -l cut -c 1-10 grep "...x..x..x"

9) Mostrar el nombre de los archivos y directorios presentes en tu directorio particular (el listado se debe obtener con ls l, y formatear con algún comando de los vistos en clase) (Con formatear eu supoño que será buscar algo aínda que tamén pode ser cambiar o formato de saída cuxo caso se fasia con sed) # Solución cutre xd, supoño que ten que haber outra maneira mellor de facelo xd, peo funciona xd ls -l cut -c 49- grep "a" 10) Usando como fuente el archivo /etc/passwd, mostrar: a. Los nombres de todos los usuarios en el sistema, y guardarlos en el chero usuarios.txt b. Los nombres seguidos del ID (separados por una coma) de todos los usuarios. c. Lo mismo que en el punto a., pero sólo para aquellos usuarios que tengan en home su directorio personal d. Mostrar los nombres de todos los usuarios separados con un espacio (el salto de línea se puede especicar con el caracter \n) echo "Agora vai aparecer un menu.se ves que tal introduce unha opcion ou pulsa 3 para sair" echo "A )Mostrar nomes de todolos usuarios do sistema e gardalos en usuarios.txt" echo "B) Os nomes seguidos do ID (separados por unha coma ) de tódolos usuarios " echo "C) idem que no primeiro caso pero so para aqueles usuarios que teñan home no seu directorio particular" echo "D) Mostrar o nome de tódolos usuarios separados por un espacio en blanco " read op case $op in A a) cat /etc/passwd cut -d ":" -f 1 tee usuarios.txt ;; B b) cat /etc/passwd cut -d ":" -f 1,3 --output-delimiter=",";; C c) cat /etc/passwd cut -d ":" -f 6 grep "/home/" cat ;; D d) cat /etc/passwd cut -d ":" -f 1 paste -s tr '/n' ' ' ;; 3) exit 0;; *)echo "Opcion incorrecta";; esac

11) Usando el chero datos.txt, obtener: a. Todas las líneas que contengan la cadena gato b. Todas las líneas que contengan la palabra atun, con dos o más n. c. Obtener todas las palabras que contengan la cadena atun (completa) d. Obtener todas las palabras gatas o atas 12) Mostrar todos los procesos que no estén asociados a ningún terminal (procesos TTY es? ). Mostrar únicamente el ID del proceso, y guardarlo en un chero de nombre procesos.txt ps -a cut -c 1-41 grep? cut -d -f 7 13) Mostrar un listado de todos los usuarios regulares del sistema (aquellos cuyo ID empieza a partir de 1000), e indicar si están o no conectados. [ cat /etc/passwd cut -d : -f 3 who ] -gt 1000 14) Escribir un scritp (chat.sh) que permita establecer una charla interna (en el mismo servidor) de dos usuarios conectados a través de terminales. Se especicará un nombre de usuario, el programa detectará si está o no conectado, y en caso de estarlo comenzará la charla, enviando los mensajes a los dispositivos especiales /dev/ptsx. Usar los comandos: who, echo, cut, grep, tr.grado de dicultad: ALTA, os va a llevar varias horas de trabajo, seguramente).