Introducción al intérprete de órdenes
- Presentación de clase Archivo:Laboratorio-01.pptx
Contenido
Interprete de órdenes
- Autocompletado.
- Ctrl-L, limpia el contenido de la pantalla.
- Definición de variables.
- Acceso a variables.
Órdenes básicas
ls
Lista el contenido de una carpeta.
- -a, mostrar todo, incluído los ficheros que empiezan por '.' (en alguna bibliografía se refieren a estos ficheros y directorios como "ocultos").
- -l, formato largo: rwx.
Los permisos de un fichero se interpretan de la siguiente manera:
- r (read), permite leer del fichero.
- w (write), permite modificación y del contenido del fichero, así como su borrado.
- x (execute), permite la ejecución de un fichero (ya se binario ejecutable o un script).
Para los directorios, la interpretación es diferente:
- r (read), se puede listar el contenido del directorio.
- w (write), se pueden añadir nuevos fichero al directorio, así como borrar ficheros.
- x (execute), se puede acceder al directorio mediante la orden cd.
cd
Cambia el directorio de trabajo actual.
pwd
usuario@pc:~$ pwd /home/profesor
Manejo de ficheros y directorios
mkdir
Crea un directorio
rm
Borrado de ficheros y directorio (con contenido).
Por ejemplo:
rm fichero.txt
Para borrar un directorio hay que usar la opción '-r':
rm -r xyz
La orden 'rmdir' sirve para borrar directorios vacíos. No muy útil :-(, mejor usar 'rm'.
sort
Ordena un fichero de manera alfanumérica.
cp
Copia ficheros o carpetas.
Por ejemplo, copia el fichero 'fichero1.txt' al directorio temporal.
cp fichero1.txt /tmp
Otro ejemplo, copia una carpeta y su contenido al directorio temporal.
mkdir xyz echo "hola mundo" > xyz/fichero.txt cp -r xyz /tmp
La opción '-r' me permite realizar copias recursivas, es decir, de una carpeta y su contenido.
cat
Muestra el contenido de un fichero de texto plano.
cat fichero.txt
También se puede usar para concatenar ficheros:
cat lista-clase.txt lista-clase2.txt
Y podríamos combinarlo con el mecanismo de tuberías para obtener una lista ordenada:
cat lista-clase.txt lista-clase2.txt | sort
Y volcar esa salida a ordenada a un fichero con la redirección de salida:
cat lista-clase.txt lista-clase2.txt | sort > lista-clase-ordenada.txt
grep
Sirve para buscar patrones, por ejemplo:
grep Saavedra lista-de-clase.txt
El primer parametro es el patrón a buscar, el segundo es el fichero en que se se busca el patrón.
Como viene siendo habitual, se puede combinar grep con tuberias, por ejemplo:
sort lista-de-clase.txt | grep Saavedra
wc
Sirve para contar el número de líneas, palabras y caracteres.
wc lista-de-clase.txt 1 3 27 lista-clase.txt
touch
Crea un fichero vacío.
Otros comandos
man
Muestra página de manual
echo
Imprime mensaje en pantalla
curl
Sirve para descargar ficheros, por ejemplo:
curl http://archive.ubuntu.com/ubuntu/dists/bionic-updates/main/installer-amd64/current/images/netboot/netboot.tar.gz -O
Manejo de procesos
ps
Muestra la lista de procesos en ejecución.
kill
Termina con la ejecución de un proceso.
kill 4356
o de manera abrupta con:
kill -KILL 4356
top
Monitoriza el uso de los recursos del sistema.
Manejo de usuarios y grupos
adduser
deluser
addgroup
Manejo de permisos
chmod
chown
chgrp
Administración general del sistema
ssh
apt
Ejercicios
- 1 Crear un arbol de directorios en la carpeta home con esta pinta:
carpeta1 | |------ carpeta2 | |------ carpeta3 fichero.txt fichero2.txt
Donde fichero.txt contiene la cadena "Probando 1 2 3" y fichero2.txt contiene la cadena "Hola Mundo".
- 2 Mover el fichero2.txt al temporal con el nombre fichero3.txt
- 3 Contar el número de lineas del fichero fichero3.txt
- 4 Concatenar el contenido de fichero.txt y fichero2.txt en un fichero en el home que se llame fichero4.txt
Solución
mkdir carpeta1 mkdir carpeta1/carpeta2 mkdir carpeta1/carpeta3 echo "Probando 1 2 3" > carpeta1/carpeta3/fichero.txt echo "Hola Mundo" > carpeta1/carpeta3/fichero2.txt
mv carpeta1/carpeta3/fichero2.txt /tmp/fichero3.txt
wc -l /tmp/fichero3.txt
cat carpeta1/carpeta3/fichero.txt /tmp/fichero3.txt > fichero4.txt