Ficheros de texto y procesos

Anuncio
Trabajo con ficheros de texto
Ficheros de texto
●
En Linux se usan los ficheros de texto para
muchas cosas:
–
–
–
–
Documentación de programas
Ficheros de configuración
Guiones del Shell
Archivos de registro (log files)
Visualización de ficheros de
texto
cat miFichero.txt
less otroFichero.txt
tail miFichero.txt
head miFichero.txt
cat F1.txt F2.txt F3.txt
El editor vi (vim)
●
●
●
Para editar texto desde el Shell hay
principalmente tres editores: ed, vi y
emacs.
vi es potente y está en todas las
instalaciones (o está vim que es el vi
mejorado)
Conviene saber manejarlo ya que a veces
hay que editar algún archivo desde la
consola de texto.
Modos del vi
●
Dos modos: edición y comandos
●
Al arrancar está en modo comando.
●
Los comandos de inserción son:
–
i - Inserta texto antes del carácter sobre el que está el cursor.
–
a - Inserta texto después del carácter sobre el que está el
cursor.
–
I - Inserta texto al comienzo de la línea en la que está el
cursor.
–
A - Inserta texto al final de la línea en la que está el cursor.
–
o - Abre espacio para una nueva línea después de la línea en
la que está el cursor y permite insertar texto en la nueva línea.
–
O - Análogo al anterior, pero abre espacio en la línea anterior.
Comandos
●
●
Si se está insertando, Esc pasa a modo
comando.
Un resumen de comandos es:
–
–
–
Eliminar texto: dd elimina la línea actual, ndd id.
n líneas, dw una palabra.
Búsqueda: (seguido de un texto) / busca
adelante, ? atrás.
Cortar y pegar: yy copia la línea al buffer, p pega
Comandos de línea en vi
●
Comienzan todos con :
●
Se puede poner más de uno.
–
–
–
–
–
–
:w – Guardar el fichero
:w! - Forzar guardar
:q – Finalizar
:q!
:s/palabra/reemplazamiento/ - Reemplaza
palabra por reemplazamiento a partir del cursor.
:help – Pues eso.
Búsqueda de palabras
●
grep permite buscar palabras en un fichero.
grep 'lo que quiero buscar' miFichero.txt
●
●
●
busca 'lo que quiero buscar' en miFichero.txt
y escribe la línea donde lo encontró
Lo mejor de grep es que podemos poner
nombres de fichero con plantillas, y además
buscar recursivamente: grep -r 'buscar' *
Además se puede indicar lo que se busca
con expresiones regulares.
Comparación de ficheros
●
●
diff fichero1 fichero2
Compara los dos ficheros y escribe las
líneas distintas.
Procesos
Introducción
●
●
●
●
Al iniciar un programa, se pone en marcha 1
o más procesos.
Además de los procesos del usuario, el
sistema pone muchos en marcha.
Podemos ver los que están en marcha con
top
El programa presenta solamente los que
caben, pero en la cabecera podemos ver los
que hay.
top
●
Las columnas mostradas son:
–
PID – Identificador de proceso
–
USER – El usuario propietario. Si son de root, no se pueden matar más que
por él.
–
PR – Prioridad (-20 la mayor y 19 la menor)
–
NI – (nice) Si es negativo indica que no quiere ser interrumpido
–
VIRT – Memoria virtual usada
–
RES – Memoria real usada
–
SHR Memoria compartida
–
S – S dormido, R en marcha, Z zombie
–
%CPU – Porcentaje de CPU usado
–
%MEM – Uso de memoria
–
TIME+ - Tiempo en marcha
–
COMMAND – El nombre del programa
Comandos top
●
●
●
●
Con r se puede reiniciar un proceso
poniendo nueva prioridad. r <PID> <PRIOR>
Con k se mata un proceso: k <PID> (si es
nuestro)
Si no muere, puede que sea el hijo de otro
que está vivo, entonces hay que ver quien
es el padre escribiendo f b Enter que dice
quien es el padre, e ir a por él.
Podemos ver solamente los nuestros con el
comando u y luego el usuario.
Otros comandos para procesos
●
ps -aux lista procesos
●
kill <PID> mata procesos.
Truquillos
Autocompletar
●
Si tenemos que escribir un nombre largo
pero único podemos comenzarlo y luego
pulsar el tabulador y se rellena solo. Si no es
único, pulsando dos veces nos dice las
posibilidades
Histórico
●
●
●
BASH recuerda todo lo que se ha tecleado y
lo almacena en un fichero.
Se puede utilizar la historia para repetir
comandos mediante las flechas de posición.
Se puede ver todo tecleando history
Pipas
●
Permiten pasar la salida de un comando
como entrada de otro, por ejemplo:
ls -l | more
Para que un listado largo se pare.
history | less
●
Para buscar un nombre de fichero en un
listado (-i no hace caso de may y min):
ls -l | grep -i pepe | grep -i ton
●
Redirección
●
Pasa la salida a un fichero en lugar de otro
programa.
O toma la entrada de un fichero
ls -l > listadoDirec.txt
●
cat f1.txt f2.txt > junto.txt
sort <f1.txt >clasificado.txt
Descargar