Las utilidades principales de GNU ( coreutils) son una colección de software GNU que implementa muchos comandos estándar de shell basados en Unix . Estas utilidades generalmente proporcionan una interfaz compatible con POSIX cuando se establece la variable de entorno POSIXLY_CORRECT , pero de lo contrario ofrecen un superconjunto de la interfaz estándar. Por ejemplo, admiten opciones largas y opciones después de los parámetros. Esta variable de entorno habilita una funcionalidad diferente en BSD .
Existen colecciones similares en el ecosistema FOSS , con un alcance y enfoque ligeramente diferentes (menos funcionalidad) o con una licencia distinta. Por ejemplo, BusyBox , que tiene licencia GPL-2.0 , y Toybox , que tiene licencia 0BSD .
Comandos
Actualmente, coreutils implementa más de 100 comandos, que se enumeran a continuación. A lo largo de este artículo, y como es habitual en los sistemas basados en Unix, el término « archivo» se refiere a todos los elementos del sistema de archivos, incluidos los archivos regulares y los archivos especiales como los directorios.
Utilidades de archivos
chcon– Cambia el contexto de seguridad de archivos ( SELinux )chgrp– Cambia la propiedad del grupo de archivoschown– Cambia la propiedad del archivo por parte del usuario.chmod– Modifica los permisos de los archivoscp– Copia archivosdd– Copia y convierte datos de archivosdf– Informes del espacio libre del sistema de archivosdir– Similar als -C -b; por defecto, lista los archivos en columnas, ordenados verticalmente.dircolors– Configura los colores utilizados paralsla salidainstall– Copia archivos y establece atributos de archivo.ln– Crea un enlace a un archivols– Lista de archivosmkdir– Crea directoriosmkfifo– Crea tuberías con nombre (FIFOs)mknod– Crea archivos especiales de bloques o caracteresmktemp– Crea archivos o directorios regulares temporalesmv– Mueve y renombra archivosrealpath– Informa la ruta absoluta o relativa de un archivo.rm– Elimina archivosrmdir– Elimina directorios vacíosshred– Sobrescribe un archivo para ocultar su contenido y, opcionalmente, lo elimina.sync– Vacía los búferes del sistema de archivostouch– Modifica las marcas de tiempo de los archivos, creando archivos si no existen.truncate– Establece el tamaño de un archivo mediante truncamiento o extensión.vdir– Me gustals -l -b; por defecto lista los archivos en formato largo
Utilidades de texto
b2sum– Calcula y verifica el resumen del mensaje BLAKE2b.base32– Codifica o decodifica base32base64– Codifica o decodifica base64basenc– Codifica o decodifica diversas codificaciones, incluyendo hexadecimal , base32 , base64 y Z85.cat– Concatena archivoscksum– Informar o calcular la suma de verificación de los archivoscomm– Compara dos archivos ordenados línea por líneacsplit– Divide un archivo en secciones determinadas por líneas de contexto.cut– Elimina secciones de cada línea de archivosexpand– Convierte tabulaciones en espaciosfmt– Formatos de textofold– Ajusta cada línea de entrada para que quepa en el ancho especificado.head– Genera la primera parte de los archivosjoin– Une líneas de dos archivos en un campo común.md5sum– Calcula y verifica el resumen del mensaje MD5nl– Número de líneas de archivosnumfmt– Formatos de númerosod– Vuelca archivos en formato octal y otros formatos.paste– Combina líneas de archivosptx– Genera un índice permutado del contenido de los archivos.pr– Archivos paginados o columnadossha1sum,sha224sum,sha256sum,sha384sum,sha512sum– Calcula y verifica los resúmenes de mensajes SHA-1 / SHA-2shuf– Genera permutaciones aleatoriassort– Ordena las líneas de los archivos de textosplit– Divide un archivo en partessum– Realiza sumas de verificación y cuenta los bloques en un archivo.tac– Concatena los archivos en orden inverso, línea por línea.tail– Genera la última parte de los archivostr– Traduce o elimina caracterestsort– Realiza una ordenación topológicaunexpand– Convierte espacios en tabulacionesuniq– Elimina las líneas duplicadas de un archivo ordenado.wc– Informa el número de bytes, palabras y líneas en los archivos.
Servicios públicos de Shell
arch– Informa el nombre del hardware de la máquina (igual queuname -m)basename– Elimina el prefijo de ruta de un nombre de ruta dado.chroot– Cambia el directorio raízdate– Informa o establece la fecha y hora del sistema.dirname– Elimina los sufijos que no son de directorio del nombre del archivo.du– Muestra el uso del disco en los sistemas de archivosecho– Genera textoenv– Informa y modifica las variables de entornoexpr– Evalúa expresionesfactor– Factores numéricosfalse– No hace nada más que salir con estado de fracasogroups– Informa sobre los grupos de los que el usuario es miembro.hostid– Informa el identificador numérico del host actual.id– Informa sobre el UID y GID reales o efectivoslink– Crea un enlace a un archivologname– Informa el nombre de usuarionice– Modifica la prioridad de programaciónnohup– Permite que un comando continúe ejecutándose después de cerrar la sesión.nproc– Consulta el número de procesadores (activos)pathchk– Comprueba si los nombres de archivo son válidos o portátiles.pinky– Una versión ligera de dedoprintenv– Informa sobre las variables de entornoprintf– Formatos de textopwd– Informa sobre el directorio de trabajo actualreadlink– Informa el valor de un enlace simbólicoruncon– Ejecutar comando con el contexto de seguridad especificadoseq– Informa una secuencia de númerossleep– Bloquea (retrasa, espera) durante un tiempo determinado.stat– Informa sobre información relativa a un inodostdbuf– Ejecuta un comando con una configuración de flujos estándar personalizada.stty– Modificaciones e informes de la configuración de la línea terminaltee– Envía la salida a varios archivostest– Evalúa una expresióntimeout– Ejecuta un comando con un límite de tiempo.true– No hace más que salir con éxito.tty– Informa el nombre del terminaluname– Informes de información del sistemaunlink– Elimina archivos medianteunlink()funciónuptime– Informa cuánto tiempo lleva funcionando el sistema.users– Informa los nombres de usuario de los usuarios que han iniciado sesión en el host actual.who– Informa sobre los usuarios que han iniciado sesión.whoami– Informa el ID de usuario efectivoyes– Genera una cadena repetidamente[– Sinónimo de prueba que permite expresiones como[ expression ]
Historia
En 1990, David MacKenzie anunció GNU fileutils . [ 3 ]
En 1991, MacKenzie anunció GNU shellutils y GNU textutils . [ 4 ] [ 5 ] Además, Jim Meyering se convirtió en el mantenedor de los paquetes (conocidos ahora como coreutils) y lo ha sido desde entonces. [ 6 ]
En septiembre de 2002, se crearon las utilidades principales de GNU mediante la fusión de los paquetes anteriores textutils , shellutils y fileutils , junto con otras utilidades diversas. [ 7 ]
En julio de 2007, la licencia de las utilidades principales de GNU se actualizó de GPL-2.0 o posterior a GPL-3.0 o posterior . [ 8 ]
En abril de 2026, Canonical planea reemplazar el paquete coreutils estándar, basado en C , por uno escrito en Rust en su lanzamiento de Ubuntu 25.10 y 26.04 LTS. [ 9 ] Actualmente está disponible una versión preliminar del paquete, aunque algunos se quejan de problemas de rendimiento y seguridad. [ 10 ]
Véase también
- Aplicaciones principales de GNOME : aplicaciones de software desarrolladas teniendo en cuenta la filosofía de GNOME.
- GNU Binutils : herramientas de desarrollo de software de GNU para código ejecutable.
- Lista de paquetes GNU
- Lista de aplicaciones de KDE : conjunto de aplicaciones y bibliotecas de soporte. Páginas que muestran breves descripciones de los destinos de redirección.
- Lista de comandos POSIX
- Lista de demonios de Unix
- Lista de navegadores web para sistemas operativos Unix y similares a Unix.
- Toybox : Colección de herramientas Unix en un único archivo ejecutable.
- Filosofía Unix – Filosofía de desarrollo de software
- util-linux – Paquete de utilidades de Linux de la Organización del Núcleo de Linux
Referencias
- ↑ "coreutils-9.11 lanzado [ estable ] " . 20 de abril de 2026 . Consultado el 21 de abril de 2026 .
- ↑ "El proyecto de código abierto de utilidades principales de GNU en Open Hub: Página de idiomas" . openhub.net . Archivado del original el 28 de marzo de 2019. Consultado el 28 de marzo de 2019 .
- ↑ MacKenzie, David J. (8 de febrero de 1990). "Utilidades de archivos GNU versión 1.0" . groups.google.com . Archivado del original el 28 de abril de 2023. Recuperado el 24 de septiembre de 2025 .
- ↑ MacKenzie, David J. (16 de julio de 1991). "Se publican utilidades de programación de shell de GNU" . groups.google.com . Archivado del original el 28 de abril de 2023. Recuperado el 28 de abril de 2023 .
- ↑ MacKenzie, David J. (22 de agosto de 1991). "Se publican nuevas utilidades de texto y archivos GNU" . groups.google.com . Archivado del original el 3 de diciembre de 2024. Consultado el 24 de septiembre de 2025 .
- ↑ "Quién es GNU" . gnu.org . Archivado del original el 28 de abril de 2023. Consultado el 28 de abril de 2023 .
- ↑ Meyering, Jim (13 de enero de 2003). "readme-package-renamed-to-coreutils" . git.savannah.gnu.org . Archivado del original el 25 de diciembre de 2019. Recuperado el 15 de agosto de 2018 .
- ↑ Meyering, Jim (23 de julio de 2007). "Copiando: Actualización a la versión 3" . git.savannah.gnu.org . Archivado del original el 25 de diciembre de 2019. Recuperado el 15 de agosto de 2018 .
- ↑ Rendek, Lubos (4 de noviembre de 2025). "Ubuntu 26.04: Fecha de lanzamiento y nuevas características en Resolute Raccoon" . linuxconfig.org . Consultado el 10 de noviembre de 2025 .
- ↑ Larabel, Michael (15 de septiembre de 2025). "La transición a Rust Coreutils en Ubuntu 25.10 ha revelado deficiencias de rendimiento" . Phoronix . Archivado del original el 9 de noviembre de 2025. Consultado el 9 de noviembre de 2025 .
Enlaces externos
- Sitio web oficial
- "GNU Coreutils" . gnu.org . Consultado el 24 de septiembre de 2025 .- Manual
- "Léame" . git.savannah.gnu.org . Consultado el 24 de septiembre de 2025 .
- "El cofre de herramientas de la herencia" . heirloom.sourceforge.net . Consultado el 24 de septiembre de 2025 .– Un conjunto alternativo de utilidades
- Both, David (24 de abril de 2018). "Una introducción a las utilidades principales de GNU" . opensource.com . Consultado el 24 de septiembre de 2025 .
- "Piedra Rosetta para *Nix" . bhami.com . Consultado el 24 de septiembre de 2025 .– Lista configurable de programas equivalentes para sistemas *nix.
- Rösler, Wolfram (2007). "La lista de acrónimos de Unix" . roesler-ac.de . Archivado del original el 6 de agosto de 2024. Recuperado el 24 de septiembre de 2025 .– explica los nombres de muchos comandos de Unix.
- "Página principal del sistema UNIX" . unix.org . Consultado el 24 de septiembre de 2025 .
- Software libre programado en C
- Software de sistema gratuito
- Software del Proyecto GNU
- Listas de software
- Software que utiliza la Licencia Pública General de GNU.
- Administración del sistema
- Software Unix
- Utilidades Unix SUS2008
- Software de línea de comandos