GNU Core Utilities

Coreutils (o GNU Core Utilities) es un paquete de software desarrollado por el proyecto GNU que contiene varias de las herramientas básicas como cat, ls y rm necesarias para sistemas operativos del tipo Unix. Es una combinación de tres paquetes anteriores: utilidades de ficheros (fileutils), utilidades de intérpretes de comandos (shellutils) y utilidades de proceso de textos (textutils).

GNU Core Utilities
Información general
Tipo de programa Utilidades
Desarrollador GNU Project
Licencia GPL
Información técnica
Programado en C
Versiones
Última versión estable 8.32 (info) ( 5 de marzo de 2020 (3 años, 6 meses y 4 días))
Enlaces

Funciones de GNU Coreutils

Las utilidades GNU core soportan opciones de cadena larga como parámetros a los comandos, así como cierta permisividad en la convención al especificar opciones antes de los argumentos regulares (siempre que la variable de entorno POSIXLY_CORRECT esté definida, hecho que habilita una diferente funcionalidad en BSD). Adicionalmente, como la filosofía GNU emplea información desde páginas de manual (y usa herramientas como info), la información proporcionada es mayor.

Esenciales

Ejemplo de la orden ls

La siguiente tabla lista algunas utilidades importantes.[1]

ComandoUtilidad
cdcambia de directorio
lslista el directorio
catconcatena archivos a la salida estándar
mkdircrea un directorio
rmdirelimina un directorio vacío
rmelimina archivos o directorios
cpcopia archivos o directorios
mvmueve archivos o directorios
lncrea enlaces duros o simbólicos
chowncambia el usuario y grupo del archivo
chmodcambia los permisos del archivo
ddconvierte y copia un archivo
dfinforma del espacio disponible en disco del sistema de archivo
tararchivador tar
lesspaginador de terminal
findbusca archivos o directorios
diffcompara archivos línea por línea
grepimprime las líneas que coinciden con un patrón
sededitor de secuencias
awklenguaje de escaneo y procesamiento de patrones
dmesgimprime o controla el búfer del anillo del kernel
lsblklista los dispositivos de bloques
mountmonta un sistema de archivos
umountdesmonta un sistema de archivos
susubstitute user
killfinaliza un proceso
pgrepbuscar procesos por nombre o atributos
psmuestra información sobre los procesos
freemuestra la cantidad de memoria libre y utilizada

Previniendo la pérdida de datos

rm, mv, cp y las redirecciones de la línea de órdenes eliminan o sobrescriben archivos sin preguntar. rm, mv, y cp son compatibles con el indicador -i para avisar al usuario antes de cada eliminación / sobreescritura. A algunos usuarios les gusta habilitar el indicador -i de forma predeterminada utilizando alias. Confiar en estas opciones de las líneas de órdenes puede ser peligroso porque te acostumbra a ellas, lo que da como resultado la posible pérdida de datos cuando utiliza otro sistema o usuario que no tiene dicho indicador. La mejor forma de evitar la pérdida de datos es crear copias de seguridad.

No esenciales

Esta tabla enumera las utilidades principales que a menudo son útiles.[1]

ComandoUtilidad
aliasdefine o muestra los alias
typeimprime el tipo de una orden
timetemporiza una orden
teelee de la entrada estándar y escribe en la salida estándar y archivos
mktempcrea un archivo o directorio temporal
cutimprime partes seleccionadas de líneas
trtraduce o elimina caracteres
odvuelca archivos en octal y otros formatos
sortordena líneas
uniqinforma u omite líneas repetidas
commcompara dos archivos ordenados línea por línea
headvuelca la primera parte de los archivos
tailvuelca la última parte de los archivos, o sigue los archivos
wcimprime el recuento de líneas nuevas, palabras y bytes
stringsimprime caracteres imprimibles en archivos binarios
iconvconvierte codificaciones de caracteres
fileestima el tipo de archivo

Alternativas

Distintas alternativas a las utilidades principales:[1]

Alternativa a cp/mv

  • rsync permite reanudar una transferencia fallida, mostrar el estado de la transferencia, omitir archivos ya existentes y asegurarse de la integridad de los archivos de destino utilizando sumas de verificación.

Alternativas a ls

  • lsd Moderno ls con muchos colores bonitos e iconos increíbles. Escrito en Rust.
  • exa Otro reemplazo de ls con soporte para colores, vista de árbol, integración de git y otras características. También escrito en Rust.

Alternativas a find

  • fd Alternativa simple, rápida y sencilla de find. Ignora los archivos ocultos por defecto.
  • fuzzy-find Completado difuso para la búsqueda de archivos.
  • mlocate Mezcla las implementaciónes locate/updatedb.

Alternativas a diff

  • dwdiff Una interfaz de comparación de palabras para el programa diff; admite colores.
  • wdiff Una implementación para palabras de GNU diff; no admite colores.
  • cwdiff Un envoltorio de wdiff de GNU que colorea el resultado.
  • icdiff Una herramienta diff coloreada escrita en Python. "Improved color diff" está destinado a complementar el uso normal de diff.

Alternativas a grep

  • mgrep Un grep multilínea.

Buscadores de código

Las siguientes tres herramientas tienen como objetivo reemplazar grep para la búsqueda de código. Realizan búsquedas recursivas de manera predeterminada, omiten archivos binarios y respetan Plantilla:Ic.

  • ack Un reemplazo de grep basado en Perl, dirigido a programadores con grandes estructuras de código fuente heterogéneo.
  • ripgrep (rg) Una herramienta de búsqueda que combina las capacidades de ag con la velocidad de grep.
  • La herramienta de búsqueda de código Silver Searcher (ag) Similar a Ack, pero más rápida.

Filtros interactivos

  • fzf Buscador difuso de línea de órdenes de propósito general, potenciado por find por defecto.
  • fzy Un selector de texto difuso simple y rápido con un algoritmo de puntuación avanzado.
  • peco Herramienta de filtrado interactivo simplista.
  • percol Añade algo del filtrado interactivo al concepto de conducto (pipe) tradicional del intérprete de línea de órdenes de UNIX.

Véase también

Referencias

  1. «Core utilities (Español)». ArchWiki. 10 de febrero de 2020. Consultado el 27 de mayo de 2020.

Fuentes

 Este artículo incorpora texto de un trabajo de contenido libre. Licenciado bajo GNU Free Documentation License 1.3 o posterior Declaración de la licencia: pacman (Español), ArchWiki. Para aprender como añadir texto de licencias libres a artículos de Wikipedia, véase Wikipedia:Agregar textos en licencia libre en Wikipedia. Para más información sobre cómo reutilizar texto de Wikipedia, véanse las condiciones de uso.

Este artículo ha sido escrito por Wikipedia. El texto está disponible bajo la licencia Creative Commons - Atribución - CompartirIgual. Pueden aplicarse cláusulas adicionales a los archivos multimedia.