# GNU Core Utilities

Coreutils (ou GNU Core Utilities) est un paquetage du projet GNU contenant de nombreux outils de base nécessaires pour les systèmes d'exploitation de type Unix (dont GNU/Linux), tels que cat, ls, et rm. C'est une combinaison de paquetages plus anciens, incluant notamment textutils (pour le texte), shellutils (pour les scripts), et fileutils (pour les fichiers).

## Programmes inclus dans coreutils
### Outils pour les fichiers
#### chcon

    Changer le contexte de sécurité SELinux d'un fichier.

#### chgrp

    Changer le groupe propriétaire d'un fichier.

#### chown

    Changer l'utilisateur propriétaire d'un fichier.

#### chmod

    Changer les permissions d'un fichier ou d'un répertoire.

#### cp

    Copier un fichier ou un répertoire.

#### dd

    Copie brute d'un périphérique physique.

#### df

    Montrer l'espace disque occupé sur un système de fichiers.

#### dir

    Fait l'équivalent de ls -C -b (par défaut, les fichiers sont listés en colonnes et triés verticalement).

#### dircolors

    Paramétrer les couleurs pour ls.

#### install

    Copier des fichiers et paramétrer des attributs.

#### ln

    Créer un lien (physique ou symbolique) vers un fichier.

#### ls

    Lister les fichiers.

#### mkdir

    Créer un répertoire.

#### mkfifo

    Créer un tube nommé FIFO.

#### mktemp

    Créer un dossier ou fichier temporaire.

#### mknod

    Créer un fichier de périphérique pour un périphérique.

#### mv

    Renommer ou déplacer un fichier.

#### rm

    Supprimer un fichier.

#### rmdir

    Supprimer un répertoire.

#### shred

    Écraser le contenu d'un fichier.

#### sync

    Exécuter immédiatement les requêtes d'écriture qui sont en attente.

#### touch

    Créer un fichier ou modifier le timestamp de ce fichier.

#### truncate

    Réduire ou augmenter la taille d'un fichier à la taille donnée.

#### vdir

    Fait l'équivalent de ls -l -b (par défaut, les fichiers sont listés au format long).

#### realpath

    Affiche l'arborescence complète d'un fichier, d'un lien symbolique.

### Outils pour le texte
#### base64

    Encodage et décodage base64 et affichage en sortie standard.

#### cat

    Afficher le contenu d'un fichier ou concaténer plusieurs fichiers.

#### cksum

    Faire la somme de contrôle d'un fichier.

#### comm

    Comparer deux fichiers triés ligne par ligne.

#### csplit

    Éclater un fichier en différentes sections (les sections sont déterminées par une ligne de contexte dans le fichier initial).

#### cut

    Sélectionner une colonne dans un fichier.

#### expand

    Convertir les tabulation en espace.

#### fmt

    Formater un texte.

#### fold

    Mettre toutes les lignes d'un fichier à la même longueur.

#### head

    Afficher les premières lignes d'un fichier.

#### join

    Joindre les lignes de deux fichiers en prenant comme critère une colonne commune.

#### md5sum

    Calculer et vérifier le MD5 d'un fichier.

#### nl

    Numéroter les lignes d'un fichier.

#### od

    Dumper au format octal ou hexadécimal ou autre un fichier.

#### paste

    Afficher sur chaque ligne de la sortie standard les lignes correspondantes des fichiers passées en paramètre et séparées par des tabulations.

#### ptx

    Générer un index permuté du contenu d'un fichier.

#### pr

    Convertir un fichier texte pour l'imprimer.

#### sha1sum

    Calculer et vérifier SHA-1 d'un fichier.

#### shuf

    Création d'une sortie standard par la permutation aléatoire des données du flux d'entrée.

#### sort

    Trier par ordre alphabétiques les lignes d'un fichier.

#### split

    Éclater un fichier en plusieurs fichiers de même taille.

#### sum

    Faire la somme de contrôle d'un fichier.

#### tac

    Afficher un fichier en inversant l'ordre des lignes.

#### tail

    Afficher les dernières lignes d'un fichier.

#### tr

    Changer un caractère particulier dans un fichier (exemple : remplacer tous les 'a' par des 'b').

#### tsort

    Faire un tri topologique.

#### unexpand

    Convertir les espaces en tabulation.

#### uniq

    Supprimer les doublons d'un fichier.

#### wc

    Calculer le nombre de lignes, de mots et de caractères d'un fichier.

### Outils pour les shells
#### arch

    Affiche l'architecture de la machine (par exemple x86_64).

#### basename

    Supprimer la partie répertoire d'un chemin de fichier.

#### chroot

    Changer pour un programme le répertoire racine de la machine hôte.

#### date

    Afficher ou modifier la date.

#### dirname

    Ne conserver que la partie répertoire dans un chemin de fichier.

#### du

    Affiche la taille d'un fichier, ou d'un dossier.

#### echo

    Afficher une chaîne de caractères.

#### env

    Afficher ou modifier les variables d'environnement.

#### expr

    Évaluer une expression.

#### factor

    Factoriser des nombres (par exemple, pour 484, cette commande indiquera que ce nombre est le produit de 2*2*11*11).

#### false

    Ne fait rien, mais renvoie un code erreur.

#### groups

    Indique le ou les groupes dont fait partie un utilisateur.

#### hostid

    Affiche le hostid de l'ordinateur.

#### id

    Affiche les identifiants de l'utilisateur et de son groupe primaire.

#### link

    Crée un lien physique vers un fichier.

#### logname

    Affiche le login d'un utilisateur.

#### nice

    Modifie la priorité d'un processus.

#### nohup

    Permet à une commande de continuer à s'exécuter après avoir reçu un signal de logging out.

#### pathchk

    Vérifie que les chemins de répertoire sont valides et portables.

#### pinky

    Une version allégée de finger.

#### printenv

    Afficher les variables d'environnement.

#### printf

    Formater et imprimer des données.

#### pwd

    Afficher le répertoire de travail courant.

#### readlink

    Afficher la valeur d'un lien symbolique.

#### runcon

    Exécuter une commande avec un contexte de sécurité particulier.

#### seq

    Afficher une suite de nombre.

#### sleep

    Se mettre en sommeil pendant un certain laps de temps.

#### stat

    Afficher des informations détaillées sur un fichier, ou un dossier.

#### stty

    Changer et imprimer les paramètres d'un terminal.

#### su

    Exécuter un shell ou une commande avec des identifiants différents.

#### tee

    Ce qui est en entrée est envoyé à la fois en sortie et vers des fichiers de sortie.

#### test

    Évaluer une expression.

#### timeout

    Exécuter une commande avec un délai.

#### true

    Ne fait rien, mais renvoie la valeur '0'.

#### tty

    Afficher le nom du terminal.

#### uname

    Afficher des informations sur le système d'exploitation (notamment, type de noyau et version).

#### unlink

    Supprimer un lien physique sur un fichier.

#### uptime

    Afficher combien de temps le système a fonctionné.

#### users

    Afficher la liste des utilisateurs connectés.

#### who

    Afficher la liste des utilisateurs connectés.

#### whoami

    Afficher l'identifiant effectif de l'utilisateur.

#### yes

    Afficher une chaîne caractère répétitivement.

### Autres outils

    Un synonyme pour test