Prioridades, Enlaces, GREP y FIND en Sistemas Operativos: Comandos Esenciales
Enviado por Chuletator online y clasificado en Informática y Telecomunicaciones
Escrito el en español con un tamaño de 6,48 KB
Prioridades de Procesos en Sistemas Operativos
En la gestión de procesos de un sistema operativo, existen diferentes niveles de prioridad:
- Nice value (Número Nice): Es un valor utilizado en la planificación de procesos. La variable de entorno
{N_ZERO}
asigna este valor, que por defecto es 10. - Prioridad absoluta: Es la prioridad que el núcleo del sistema operativo asigna a un proceso. Es intocable, ni siquiera el usuario root puede modificarla.
- Prioridad relativa: Se asigna a un proceso mediante la variable de entorno
{N_ZERO}
. El rango de la prioridad relativa va de 0 (máxima prioridad) a 19 (mínima prioridad).
Modificación de la Prioridad
- Comando
nice
: Establece la prioridad relativa al ejecutar un comando en relación con la prioridad por defecto.nice -n
<comando>: Disminuye la prioridad (aumenta el valor nice).nice --n
<comando>: Aumenta la prioridad (disminuye el valor nice).
- Comando
renice
: Permite modificar la prioridad relativa de un proceso que ya está en ejecución.
Cada usuario puede modificar la prioridad de sus propios procesos, siempre que sea para disminuirla. El usuario root puede modificar la prioridad de sus procesos y los de otros usuarios, tanto para aumentarla como para disminuirla.
Enlaces en Sistemas de Archivos
- Hard link (Enlace duro): Son entradas de directorio que hacen referencia al mismo fichero.
- Creación de Hard link: Se utiliza el comando
ln
. Crea una copia exacta, incluyendo los permisos y los ficheros asociados. - Enlaces simbólicos (débiles):
ln -s
. Cuando se realiza un cambio en el enlace o el archivo original, se refleja en ambos. Si se borra un enlace simbólico, no se borra el fichero original, pero si se borra el fichero original, el enlace simbólico queda inutilizado. El comandols -l
muestra el fichero origen del enlace en la última columna.
La Familia GREP: Búsqueda de Patrones
GREP es una familia de comandos para buscar líneas que coincidan con un patrón en uno o más ficheros.
grep
: Busca líneas que contengan un determinado patrón de caracteres. Sintaxis:grep [-bchlnsvwy] ER [ficheros...]
-c
: Muestra el número de líneas capturadas.-l
: Muestra solo los nombres de los ficheros con líneas capturadas.-v
: Muestra todas las líneas excepto las que coinciden con la expresión regular (ER).-w
: Busca la expresión como una palabra completa.
Ejemplos:
grep 'hol' tmp.doc
grep '.\{2,\}'
egrep
: Búsqueda con expresiones regulares extendidas. Sintaxis:egrep [opciones] [-f fichero1] ER [ficheros...]
. La opción-f
toma las expresiones regulares (una por línea) del fichero1.fgrep
Es equivalente a usaregrep -f
.
Ejemplo: egrep -f match ejemplo
El Comando FIND: Búsqueda Avanzada de Ficheros
find
es una herramienta para realizar búsquedas complejas de ficheros, útil para tareas de administración.
Tareas comunes de find
- Asegurarse de que no haya ficheros demasiado grandes.
- Asegurarse de que ningún usuario utilice demasiado espacio en disco.
- Buscar la ubicación de un fichero determinado.
- Borrar ficheros que pertenecen a un usuario en particular.
- Visualizar los nombres de todos los ficheros modificados en los últimos días.
Sintaxis de find
find [lista-directorios-búsqueda] [expresión]
Donde la expresión se compone de:
- [opciones]: Modifican el comportamiento de
find
. - [tests]: Condiciones de búsqueda.
- [acciones]: Operaciones a realizar sobre los ficheros encontrados.
- [operadores]: Agrupan expresiones.
Por defecto, la expresión es -print
(acción de visualización).
Opciones Comunes de find
-daystart
: Para tests que utilizan el tiempo, se toma como referencia el inicio del día actual.-depth
: Procesa el contenido de un directorio antes que el propio directorio.-maxdepth numero
: Máximo nivel de directorios a descender (número positivo).-mindepth numero
: Nivel mínimo en el que se empiezan a aplicar los tests.-xdev
: No busca en otras particiones.
Tests Comunes de find
-amin n
,-cmin n
,-mmin n
: Último acceso, cambio de estado, datos modificados (en minutos).-atime n
,-ctime n
,-mtime n
: Último acceso, cambio de estado, datos modificados (en días).-name patron_fichero
(sensitivo a mayúsculas/minúsculas),-iname patron_fichero
(insensitivo),-regex ER
: Búsqueda por nombre o expresión regular.-perm modo
: Los permisos del fichero coinciden con el modo especificado.-size n[bck]
: El fichero ocupa n unidades de espacio (b: bloques de 512 bytes, c: bytes, k: kilobytes).-user nombre
,-uid n
,-gid n
,-type c
: Búsqueda por usuario (nombre o ID), grupo (ID) o tipo de fichero (c: carácter, d: directorio, f: fichero regular, l: enlace simbólico, etc.).
Los valores numéricos en los tests pueden especificarse con +n
(mayor que n) y -n
(menor que n).
Acciones Comunes de find
-exec comando ;
: Ejecuta el comando sin preguntar.-ok comando ;
: Pregunta antes de ejecutar el comando.
En el comando, se utiliza {}
para referirse al fichero encontrado por find
.
Ejemplos:
find . -maxdepth 2
find . -user bog