Ejercicios Prácticos de Linux

12
Ejercicios Prácticos de Linux Ejercicio Nº 1 Crear una estructura desde el directorio /home que incluya varios directorios, subdirectorios y archivos, según el esquema del dibujo de la derecha. Creamos un usuario nuevo llamado usuario. cd ./../home/usuario mkdir dir1 mkdir dir2 cd ./dir1 mkdir dir11 cd .. cat > f1 cat > f2 cd dir1 cat > f3 cd ../dir2 cat > f4 Mover el fichero f3 al directorio de trabajo home/usuario. cd ../dir1 mv f3 ../f3 Copiar el fichero f4 en el directorio dir11, suponiendo que el directorio actual dir2 y otra vez como dir1. cd ../dir2 cp f4 ../dir1/dir11 cd ../dir1 cp ../dir2/f4 dir11/f4 Crear el directorio copia dentro del directorio usuario y copiar en él, el contenido de dir1. cd .. mkdir copia cp –r dir1/* copia | cp dir1/* copia Renombrar el fichero f1 por el nombre fichero y ver los permisos de ese fichero. mv f1 fichero ls –l fichero Cambiar los atributos de ese fichero f1 utilizando los dos métodos con todos los permisos para el usuario y ninguno para el resto. Todos los permisos para todos. Lectura y ejecución para el usuario y los otros nada. chmod 700 fichero chmod 777 fichero 1

description

Ejercicios Prácticos de Linux

Transcript of Ejercicios Prácticos de Linux

Ejercicios Prcticos de Linux

Ejercicios Prcticos de LinuxEjercicio N 1 Crear una estructura desde el directorio /home que incluya varios directorios, subdirectorios y archivos, segn el esquema del dibujo de la derecha.Creamos un usuario nuevo llamado usuario.

cd ./../home/usuario

mkdir dir1

mkdir dir2

cd ./dir1

mkdir dir11

cd ..cat > f1

cat > f2

cd dir1

cat > f3

cd ../dir2

cat > f4

Mover el fichero f3 al directorio de trabajo home/usuario. cd ../dir1

mv f3 ../f3

Copiar el fichero f4 en el directorio dir11, suponiendo que el directorio actual dir2 y otra vez como dir1.cd ../dir2

cp f4 ../dir1/dir11

cd ../dir1

cp ../dir2/f4 dir11/f4 Crear el directorio copia dentro del directorio usuario y copiar en l, el contenido de dir1.cd ..

mkdir copia

cp r dir1/* copia | cp dir1/* copia Renombrar el fichero f1 por el nombre fichero y ver los permisos de ese fichero.mv f1 fichero

ls l fichero Cambiar los atributos de ese fichero f1 utilizando los dos mtodos con todos los permisos para el usuario y ninguno para el resto. Todos los permisos para todos. Lectura y ejecucin para el usuario y los otros nada.chmod 700 fichero

chmod 777 fichero

chmod 300 fichero

umask 077

umask 000

umask 477 Borrar la estructura utilizando los distintos comandos.cd ..

rm r usuarioEjercicio N 2Crear un fichero con estructura de base de datos en el que cada campo se separa con dos puntos. Los campos de dichos fichero son: nombre del alumno, curso, poblacin y edad.Desde usuario:

cat > basedatos

pepe:1:montilla:17

antonio:2:crdoba:18

franci:1:montilla:18

Sali:2:crdoba:17a. Buscar todos los alumnos que son de una poblacin concreta. grep i montilla basedatosb. Buscar los alumnos que son de un curso concreto y adems tienen una edad determinada. egrep i 1|17 basedatosc. Buscar los archivos en los que aparezca el nombre de un alumno. grep l i pepe *d. Buscar registros en los que aparezca una poblacin o una edad determinada. egrep i curso|edad *e. Crear un archivo en los que aparezcan tres poblaciones diferentes y despus en el primer fichero utilizarlo para hacer una bsqueda de esas poblaciones. cat > poblaciones

montilla

crdoba

priego

fgrep f poblaciones basedatosEjercicio N 3Crear un fichero estructurado con los siguientes campos: alumno, edad y curso, que utilice el espacio en blanco como separador y sobre este fichero:

Desde usuariocat > campos

barry 17 1

sali 18 2

franci 17 1

antonio 17 21. Visualizar el nombre de los alumnos y su edad. cut d f 1,2 campos2. Ordenar este fichero por el primer campo. sort campos3. Ordenar el fichero por edad.sort n +2 campos4. Ordenar el fichero por el curso dejando la ordenacin en el mismo fichero.sort n +3 o campos campos5. Crear un segundo fichero con los siguientes campos: curso, nmero de planta y nmero de aula; y crear un tercer fichero que sea el resultado de los dos anteriores.cat > campos

2 2 14

1 2 12

sort o campos2 campos2

join t j1 3 j2 1 campos campos2 > campos36. Visualizar los permisos de los archivos de nuestro directorio y el nombre de esos archivos. ls l * | cut c 1-10,55-Ejercicio N 4Crear un fichero de base de datos utilizando como separador los dos puntos:

Desde usuario

cat > raro

rejected:0

offspring:8

rejected:0

linkinpark:4a. Cambiar el separador. tr : < rarob. Cambiar las vocales minsculas por maysculas y viceversa. El resultado lo llevamos a otro fichero. tr [a-z] [A-Z] < raro > raro2c. Cifrar ese fichero y guardar el resultado en otro fichero. tr [AEIOU] [$%] < raro2 > raro3d. Descifrarlo. tr [$%] [aeiou] < raro3e. Ordenar el fichero y mostrar las lneas repetidas.sort raro | uniq -d f. Visualizar los valores del segundo campo ordenndolos y mostrando el nmero de valores repetidos en ese campo. sort n +2 | uniq -cEjercicio N 5Buscar todos los usuarios de un grupo de trabajo que tengamos creado en nuestro ordenador y el resultado lo llevamos a un fichero.

Desde usuario:

cd ../../etc

cat passwd

grep 501 /etc/passwd > /home/usuario/grupo

cd ../home/usuario1. Sobre el fichero creado en el ejercicio anterior visualizar el nombre de los usuarios y su nmero de usuario. cut d : f 1,3 grupo2. Borrar una lnea de ese fichero.sed 2 grupo3. Sustituir el nombre de todos los usuarios por otro nombre. sed s/usuario/barry/ grupo > grupo2Ejercicio N 6Visualizar la fecha del sistema con varios formatos:

a. Fecha igual a la fecha completa. dateb. Hora igual hora:minutos:segundos. date +%Tc. Hoy es da del mes del ao. date +Hoy es %d del %m del %yd. Hoy es el da x del ao. date +Hoy es %j del ao %YEjercicio N 7Crear un fichero estructurado de base de datos, que contenga los siguientes campos: nombre_alumno:edad:curso:poblacin. Y sobre el mismo fichero realiza:

Desde usuario:

cat > gente

franci:17:5:montilla

sali:18:6:montilla

sergio:24:7:crdoba

barri:17:5:montilla

sergio:13:1:crdobaa. Ordenarlo y llevar el resultado a otro fichero. sort gente > gente2b. Ordenar los alumnos de mayor a menor edad.sort +2 n r o gente2 gente2c. Ordenarlo por el tercer campo, mostrando el nmero de coincidencias para ese campo.sort +3 n gente2 | uniq -c d. Obtener los nombres de alumnos de un curso.grep 5 gente2 | cut d : f 1e. Obtener el curso de los alumnos de una poblacin, ordenados alfabticamente e indicando cuantos hay en cada curso. Grep montilla gente2 | cut d : f 3 | uniq c | sort -nf. Crear otro fichero cuyos campos sean: aula:nmero_alumnos:curso:tipo_de_estudios. Y obtener los cursos que van a un aula.cat > clase

11:29:1:base

15:23:5:letras

16:26:6:ciencias

16:25:7:informatica

grep 16 clase | cut d : f 3g. Ver los estudios de cada curso sin repeticiones y ordenados por curso. Grep 16 clase | uniq u | sort n +3 | cut d : f 4Ejercicio N 8Crear un fichero .bash_profile que permita cambiar el fichero histrico y fije el nmero de sucesos en 50. Adems crear la variable CDPATH que incluya el directorio personal y algn directorio de los otros usuarios.Desde usuario:

vi .bash_profile

pulsamos la tecla Insert y escribimos las siguientes ordenes

CDPATH=/home/usuario

HISTSIZE=50

pulsamos Esc y escribimos

:x

pulsamos IntroEjercicio N 9Crear la variable PS1 que incluya el nombre del usuario, el directorio completo y el smbolo > . Adems crear tres variables de usuario, probando si estas variables funcionan en otro shell subordinado cuando se exportan y cuando no se exportan.

Desde usuario:

vi .bash_profile

pulsamos la tecla Insert y escribimos las siguientes ordenes:

PS1=[\usuario@\w]>

variable1=1

variable2=2

variable3=3

pulsamos la tecla Esc y escribimos:

:x

pulsamos la tecla IntroEjercicio N 10 Crear el fichero .bashrc con tres alias de comandos que permitan pedir confirmacin cada vez que borramos, copiamos y movemos algn Archivo.

Activar las tres caractersticas que hemos comentado anteriormente en este manual.Ejercicio N 11Crear el siguiente fichero estructurado con los campos que se indican a continuacin:

Nmero del alumno : asignatura : Nota

Desde usuario:

cat > fichero

3:ple:6

1:ple:4

1:sim:6

2:ana:7

3:iam:7

a) Visualizar las notas de un alumno.

grep 1 fichero | cut d : f 3b) Visualizar las notas de una asignatura.

grep ple fichero | cut d : f 3c) Cuantas asignaturas tiene cada alumno.

sort fichero | uniq -cd) Crear otro fichero estructurado, que contenga los siguientes campos:

Nmero del alumno : nombre : direccin : poblacin : curso

cat > fichero2

3:jesus:fuente:montilla:1

1:manu:vega:montilla:2

2:sergio:algo:cordoba:1Y visualiza los datos de un alumno y las notas en cada una de las asignaturas.

sort o fichero fichero

sort o fichero2 fichero2join t : j1 1 j2 1 fichero2 ficheroe) Ver las notas de los alumnos de un curso.

Join t : j1 1 j2 1 fichero2 fichero | cut d : f 2,5,7 | grep 1f) Cuantos alumnos hay en cada curso.

cut d : f 5 fichero2 | uniq -c