practica_de_linux
Diferencias
Muestra las diferencias entre dos versiones de la página.
| Próxima revisión | Revisión previa | ||
| practica_de_linux [2020/04/14 21:10] – creado ignacio | practica_de_linux [2020/04/14 22:05] (actual) – pvassena | ||
|---|---|---|---|
| Línea 1: | Línea 1: | ||
| - | Acá poné tu contenido Pedro! | + | ====== Guía de Linux ====== |
| + | |||
| + | Práctica básica de los comandos más comunes de GNU/linux en bash. | ||
| + | |||
| + | Para abrir un terminal, utilice el atajo de teclado [Ctrl+Alt+t] o busque en los menús de su distribución. | ||
| + | |||
| + | ===== man: ===== | ||
| + | |||
| + | Ejecute el siguiente comando. ¿Por qué falló? | ||
| + | |||
| + | <code bash> | ||
| + | man | ||
| + | </ | ||
| + | |||
| + | Ejecute el siguiente comando y lea brevemente la descripción. ¿Qué hace //man//? | ||
| + | |||
| + | <code bash> | ||
| + | man man | ||
| + | </ | ||
| + | |||
| + | Ejecute los siguientes comandos. ¿Son lo mismo? Como desarrolladores, | ||
| + | |||
| + | <code bash> | ||
| + | man printf | ||
| + | man 1 printf | ||
| + | man 3 printf | ||
| + | </ | ||
| + | |||
| + | ===== ls: ===== | ||
| + | |||
| + | Ejecute el siguiente comando y lea brevemente la descripción. ¿Qué hace //ls//? | ||
| + | |||
| + | <code bash> | ||
| + | man ls | ||
| + | </ | ||
| + | |||
| + | Ejecute el siguiente comando y observe la salida. ¿Reconoce alguna carpeta? | ||
| + | |||
| + | <code bash> | ||
| + | ls | ||
| + | </ | ||
| + | |||
| + | Ejecute el siguiente comando y observe la salida. ¿Qué son los archivos y carpetas con punto adelante? | ||
| + | |||
| + | <code bash> | ||
| + | ls -a | ||
| + | </ | ||
| + | |||
| + | Ejecute el siguiente comando y observe la salida. ¿Qué representan las diversas columnas? | ||
| + | |||
| + | <code bash> | ||
| + | ls -l | ||
| + | </ | ||
| + | |||
| + | Ejecute los siguientes comandos. ¿Son lo mismo? | ||
| + | |||
| + | <code bash> | ||
| + | ls -a -l | ||
| + | ls -al | ||
| + | </ | ||
| + | |||
| + | Ejecute los siguientes comandos. ¿Qué es lo que estamos haciendo? | ||
| + | |||
| + | <code bash> | ||
| + | ls ~ | ||
| + | ls / | ||
| + | ls /home | ||
| + | </ | ||
| + | |||
| + | ===== pwd: ===== | ||
| + | |||
| + | Ejecute el siguiente comando. ¿Qué hace //pwd//? | ||
| + | |||
| + | <code bash> | ||
| + | man pwd | ||
| + | </ | ||
| + | |||
| + | Ejecute el siguiente comando. ¿En qué directorio estamos trabajando? | ||
| + | <code bash> | ||
| + | pwd | ||
| + | </ | ||
| + | |||
| + | ===== cd: ===== | ||
| + | |||
| + | Ejecute el siguiente comando. ¿Por qué falló? | ||
| + | |||
| + | <code bash> | ||
| + | man cd | ||
| + | </ | ||
| + | |||
| + | Ejecute el siguiente comando. ¿Qué hace //cd//? ¿Por qué no está en el manual (usar google)? | ||
| + | |||
| + | <code bash> | ||
| + | help cd | ||
| + | </ | ||
| + | |||
| + | Ejecute los siguientes comandos. ¿Qué hizo //cd//? ¿Qué carpeta lista //ls// cuando no tiene parámetros? | ||
| + | |||
| + | <code bash> | ||
| + | ls | ||
| + | cd / | ||
| + | pwd | ||
| + | ls | ||
| + | </ | ||
| + | |||
| + | Ejecute los siguientes comandos. ¿Qué representan . y .. en linux? | ||
| + | |||
| + | <code bash> | ||
| + | cd / | ||
| + | pwd | ||
| + | ls | ||
| + | cd /home | ||
| + | pwd | ||
| + | ls | ||
| + | cd . | ||
| + | pwd | ||
| + | ls | ||
| + | cd .. | ||
| + | pwd | ||
| + | ls | ||
| + | </ | ||
| + | |||
| + | Ejecute los siguientes comandos. ¿Qué es ~ en linux? ¿A qué directorio cambia //cd// cuando no tiene parámetros? | ||
| + | |||
| + | <code bash> | ||
| + | cd ~ | ||
| + | pwd | ||
| + | cd | ||
| + | pwd | ||
| + | </ | ||
| + | |||
| + | Ejecute el siguiente comando para iniciar una sesión de bash adentro de su sesión de bash, | ||
| + | permitiendo guardar el flujo de salida en un archivo. //bash// es para ejecutar la shell, //|// | ||
| + | es para redirigir la salida de un comando a la entrada de otro, y //tee// sirve para guardar | ||
| + | una copia del flujo de salida en un archivo. No es necesario que lo aprendan ahora, | ||
| + | ya lo van a ver en profundidad cuando vean Pipes, | ||
| + | pero si les interesa está muy bueno y es útil. | ||
| + | |||
| + | <code bash> | ||
| + | bash | tee log_clase_1.txt | ||
| + | </ | ||
| + | |||
| + | ===== mkdir: ===== | ||
| + | |||
| + | Ejecute el siguiente comando. ¿Qué hace // | ||
| + | |||
| + | <code bash> | ||
| + | man mkdir | ||
| + | </ | ||
| + | |||
| + | Ejecute los siguientes comandos para crear una carpeta en la cual trabajar. | ||
| + | |||
| + | <code bash> | ||
| + | mkdir practicalinux | ||
| + | cd practicalinux | ||
| + | pwd | ||
| + | </ | ||
| + | |||
| + | A partir de aquí asumimos que ya sabe como detectar en qué directorio están trabajando, | ||
| + | utilizando pwd o observando el directorio en el prompt de su terminal, | ||
| + | por lo que no lo volveremos a mencionar. | ||
| + | |||
| + | Ejecute el siguiente comando y observe la salida. | ||
| + | |||
| + | <code bash> | ||
| + | mkdir dir0 | ||
| + | ls | ||
| + | </ | ||
| + | |||
| + | Ejecute los siguientes comandos. ¿Por qué falló el primero? ¿Cómo lo solucionamos? | ||
| + | |||
| + | <code bash> | ||
| + | mkdir dir1/dir2 | ||
| + | mkdir -p dir1/dir2 | ||
| + | ls | ||
| + | </ | ||
| + | |||
| + | Ejecute los siguientes comandos para crear un archivo con el que poder ejecutar los siguientes comandos. | ||
| + | |||
| + | <code bash> | ||
| + | ls >> arch0.txt | ||
| + | ls | ||
| + | </ | ||
| + | |||
| + | El comando de dirección de flujo //>>// | ||
| + | Este tipos de comandos (de direccionamiento de flujo) son una herramienta muy poderosa | ||
| + | que le da un gran poder a los usuarios avanzados de linux para diversas tareas cotidianas. | ||
| + | Un ejemplo que puede servir para informática 1, es al hacer logging, emitir los logs por stderr | ||
| + | y redirigir stderr a un archivo, utilizando el comando: | ||
| + | |||
| + | <code bash> | ||
| + | ./a.out 2>> | ||
| + | </ | ||
| + | |||
| + | Ejecute (si quiere) el comando para instalar un paquete llamado //tree//, | ||
| + | que permite mostrar de forma bonita carpetas y archivos de forma recursiva. | ||
| + | |||
| + | <code bash> | ||
| + | sudo apt install tree | ||
| + | </ | ||
| + | |||
| + | En caso de no querer descargar el paquete, puede realizar una función similar | ||
| + | ejecutando este comando en su lugar cuando sea necesario. | ||
| + | |||
| + | <code bash> | ||
| + | find | ||
| + | </ | ||
| + | |||
| + | ===== cp ===== | ||
| + | |||
| + | Ejecute el siguiente comando. ¿Qué hace //cp//? | ||
| + | |||
| + | <code bash> | ||
| + | man cp | ||
| + | </ | ||
| + | |||
| + | Ejecute los siguientes comandos. ¿Por qué falló el primero? ¿Cómo lo solucionamos? | ||
| + | Ejecutamos tanto //tree// como //find// para que los que instalaron //tree// puedan ver las diferencias entre ambos. | ||
| + | |||
| + | <code bash> | ||
| + | cp dir1/dir2 dir_3 | ||
| + | cp -r dir1/dir2 dir_3 | ||
| + | tree | ||
| + | find | ||
| + | </ | ||
| + | |||
| + | Ejecute los siguientes comandos. ¿Qué hizo el primero? ¿Qué hizo el segundo? | ||
| + | |||
| + | <code bash> | ||
| + | cp -r dir1/dir2 . | ||
| + | cp arch0.txt dir3/ | ||
| + | tree | ||
| + | </ | ||
| + | |||
| + | ===== mv ===== | ||
| + | |||
| + | Ejecute el siguiente comando. ¿Qué hace //mv//? | ||
| + | |||
| + | <code bash> | ||
| + | man mv | ||
| + | </ | ||
| + | |||
| + | Ejecute los siguientes comandos. ¿Qué hizo cada uno? | ||
| + | |||
| + | <code bash> | ||
| + | mv arch0.txt dir0/ | ||
| + | tree | ||
| + | mv dir0/ | ||
| + | tree | ||
| + | mv dir0 dir4 | ||
| + | tree | ||
| + | </ | ||
| + | |||
| + | ===== rm ===== | ||
| + | |||
| + | Ejecute el siguiente comando. ¿Qué hace //rm//? | ||
| + | |||
| + | <code bash> | ||
| + | man rm | ||
| + | </ | ||
| + | |||
| + | Ejecute cuidadosamente (//rm// no perdona) los siguientes comandos y observe sus efectos. | ||
| + | |||
| + | <code bash> | ||
| + | rm arch1.txt | ||
| + | tree | ||
| + | </ | ||
| + | |||
| + | Ejecute cuidadosamente los siguientes comandos. ¿Por qué falló el primero? ¿Cómo lo solucionamos? | ||
| + | |||
| + | <code bash> | ||
| + | rm dir4 | ||
| + | rm -d dir4 | ||
| + | tree | ||
| + | </ | ||
| + | |||
| + | Ejecute cuidadosamente los siguientes comandos. ¿Por qué falló el primero? ¿Por qué la solución es distinta? | ||
| + | |||
| + | <code bash> | ||
| + | rm -d dir3 | ||
| + | rm -r dir3 | ||
| + | tree | ||
| + | </ | ||
| + | |||
| + | ===== Finalización ===== | ||
| + | |||
| + | Ejecute estos comandos para eliminar recursivamente todos los archivos creados, | ||
| + | dejando su computadora como estaba al inicio de la práctica. | ||
| + | |||
| + | <code bash> | ||
| + | cd .. | ||
| + | rm -r practicalinux | ||
| + | </ | ||
| + | |||
| + | Ejecute los siguientes comandos. El primero sale de la sesión de bash interna. | ||
| + | El segundo le muestra que existe un archivo llamado " | ||
| + | deberá enviar para la corrección del tp. | ||
| + | |||
| + | <code bash> | ||
| + | exit | ||
| + | ls -l | grep log_clase_1.txt | ||
| + | </ | ||
| + | |||
| + | Si decide que no quiere más el paquete //tree//, | ||
| + | ejecute el siguiente comando para eliminarlo. | ||
| + | |||
| + | <code bash> | ||
| + | sudo apt purge tree | ||
| + | </ | ||
practica_de_linux.1586898640.txt.gz · Última modificación: 2020/04/14 21:10 por ignacio