3 +Comandos+Linux+Parte+2
3 +Comandos+Linux+Parte+2
3 +Comandos+Linux+Parte+2
Parte 2
Saber que Shell estamos utilizando:
echo $SHELL
/bin/bash
locate es otro comando pero, a diferencia del anterior, utiliza una base
de datos interna que se actualiza periódicamente y nos permite hacer
búsquedas bastante más rápidas.
Los archivos que tenemos en nuestro sistema pueden ser de muchos tipos
diferentes: ejecutables, de texto, de datos, etc. A diferencia de otros sistemas,
que utilizan la extensión del archivo para determinar de qué tipo son,
GNU/Linux utiliza un sistema denominado de magic numbers, determinando
con un número mágico el tipo de fichero según sus datos. El comando file nos
lo indica.
$/tmp/prueba$ file *
practica_1.txt: ASCII text
practica_2.txt: ASCII text
practica_3.txt: ASCII text
Si necesitamos ver el contenido de un fichero, uno de los comandos más básicos es el cat.
Pasándole el nombre/s del archivo/s que queramos ver, se muestra por pantalla.
cat practica_1.txt
Este es el contenido del archivo …1
Para ficheros muy extensos podemos usar less o more, que permiten desplazarnos por el fichero de
forma progresiva.
Otro tipo de comando muy útil son los que nos buscan un cierto patrón en el contenido de los ficheros.
Con el comando grep le podemos pasar como segundo parámetro el nombre del archivo y como
primero el pattern (patrón de búsqueda) que queramos buscar.
Comandos: head y tail nos permiten tomar las primeras o las últimas
(10 por defecto) líneas de un archivo respectivamente.
$ cat nombrearchivo
>> Esta orden te permitirá imprimir por pantalla todas las lineas de texto del archivo de texto de
nombre ‘nombrearchivo’. El archivo indicado debe encontrarse en el directorio de trabajo actual.
$ cat nombrearchivo1 nombrearchivo2
$ cat -n nombrearchivo
$ cat -b nombrearchivo
• Find
• Locate
• Whereis
• Head
• Tail
• Sort
Redirecciones
Todas las operaciones dentro de cualquier proceso tienen una entrada y una salida
(INPUT / OUTPUT) y en ocasiones error.
stdin, stdout, y stderr, como todo en Linux no son más que dispositivos, o
realmente archivos (file descriptors en este caso) que se heredan en cada
terminal que se abre, donde un shell es invocado.
#> ls -l /dev/std*
lrwxrwxrwx. 1 root root 15 ago 11 12:30 /dev/stderr -> /proc/self/fd/2
lrwxrwxrwx. 1 root root 15 ago 11 12:30 /dev/stdin -> /proc/self/fd/0
lrwxrwxrwx. 1 root root 15 ago 11 12:30 /dev/stdout -> /proc/self/fd/1
• En linux cualquier comando que se teclea está utilizando la entrada
estándar [STDIN].
#> ls
archivo1 archivo2 archivo3
#> ls > listado.txt
- redireccionamos la salida de ls al archivo listado.txt
#> ls
archivo1 archivo2 archivo3 listado.txt
Finalmente tenemos 4 archivos en el directorio
Ejercicios
• Individual
• Grupal