Coreutils : Les commandes basiques de Linux
Table des matières
Dans cet article nous allons partir à la découverte des commandes des coreutils.
Ce sont toutes les commandes standard des systèmes Linux : (chmod, cp, dd, ls, sort, tr, head, wc, who,...)
Nous allons les parcourir par type d'outil et citer un exemple d'utilisation.
Les commandes sont triées par type de commande puis par ordre alphabétique.
Voici sur un système Red Hat 8 la liste des commandes :
chcon permet de changer le contexte de sécurité SELinux d'un fichier :
chgrp permet de changer le groupe propriétaire d'un fichier :
chown permet de cnager l'utilisateur d'un fichier :
cp permet de copier un fichier :
dd permet la copie brute d'un périphérique physique :
df permet de montrer l'espace disque occupé par un système de fichiers monté :
dir liste les fichiers de la même manière que ls -Cb :
install permet de copier un fichier et paramétrer ses attributs :
ln permet de créer un lien (symbolque ou physique) vers un fichier :
ls permet de lister les fichiers :
mkdir permet de créer un répertoire :
mkfifo permet de créer un tube nommé fifo sous forme de fichier :
mktemp permet de créer un nom unique pour un fichier temporaire :
mv permet de déplacer (ou renommer) un fichier :
rm permet de supprimer un fichier :
rmdir permet de supprimer un répertoire s'il est vide :
shred permet d’écraser le contenu d'un fichier (s'applique aussi à un disque, une partition ) :
sync permet d'exécuter immédiatement les requêtes en écriture qui sont en attente :
touch permet de créer un fichier vide ou modifier le timestamp d'un fichier :
truncate permet de réduire ou augmenter la taille d'un fichier donné :
vdir liste les fichiers de la même manière que ls -lb :
realpath affiche le chemin absolu d'un fichier, d'un lien symbolique :
[code=bash][/code]
[code=bash][/code]
Cette commande affiche l'architecture de la machine :
Cette commande affiche le contenu d'un fichier :
Cette commande permet de changer de répertoire :
Cette commande change le groupe propriétaire d'un fichier :
Cette commande change les droits d'un fichier :
Cette commande change l'utilisateur propriétaire d'un fichier :
Cette commande copie un fichier :
Cette commande affiche la date :
Cette commande affiche la liste des systèmes de fichiers montés et l'espace occupé de chacun :
Cette commande affiche la taille d'un dossier :
Cette commande affiche du texte :
Cette commande quitte l'interpréteur de commande :
Cette commande recherche des fichiers :
Cette commande affiche l'état de la mémoire vive (RAM) et de pagination (SWAP) utilisée :
Cette commande affiche les lignes d'un fichier correspondant à une expression
Cette commande affiche la liste des groupes dont fait partie l'utilisateur :
Cette commande affiche les premières lignes de fichiers :
Cette commande affiche le nom d'hôte de la machine :
Cette commande affiche l'ID de l'utilisateur, l'ID du groupe et les groupes de l'utilisateur :
Cette commande tue un processus par son PID (Processus IDentifier) :
Cette commande tue tous les processus par son nom :
Cette commande affiche les derniers utilisateurs connectés sur le système :
Cette commande affiche les librairies partagées d'un programme :
Cette commande créé des liens vers des fichiers :
Cette commande affiche le nom d'utilisateur connecté :
Cette commande liste le contenu d'un répertoire :
Cette commande (très utile) affiche le manuel d'utilisation d'une commande :
Affiche la somme MD5 d'un fichier :
Cette commande créé un répertoire
Cette commande déplace un fichier ou le renomme :
Cette commande affiche le nombre de lignes d'un fichier :
Cette commande affiche le PID d'un processus par son nom :
Cette commande contacte un hôte par son adresse IP ou son nom :
Cette commande affiche les processus en cours d'exécution :
Cette commande affiche les processus sous la forme d'un arbre :
Cette commande affiche le répertoire dans lequel on se trouve :
Cette commande supprime un fichier ou un répertoire :
Cette commande supprime un dossier :
Cette commande permet d'éditer le flux ou un fichier et de transformer le texte :
Cette commande sert à arrêter ou redémarrer le système :
Cette commande affiche les dernières lignes d'un fichier :
Cette commande change la date de dernier accès d'un fichier. S'il n'existe pas, un fichier vide est créé :
Cette commande affiche le nom du terminal actuellement utilisé :
Cette commande affiche le nom d'hôte, le noyau utilisé, sa version, le processeur :
Cette commande affiche la charge système et son temps de fonctionnement :
Cette commande affiche le nom des utilisateurs connectés :
Cette commande montre les utilisateurs connectés et ce qu'ils font :
Cette commande envoie un message à tout le monde sur le système (Attention, cela affiche même si vous éditez en console un fichier) :
Cette commande affiche une brève description de ce qu'est la commande associée :
Cette commande affiche qui est connecté sur le système :
Cette commande affiche l'emplacement d'un fichier exécutable, d'une source ou d'un manuel :
Introduction
Dans cet article nous allons partir à la découverte des commandes des coreutils.
Ce sont toutes les commandes standard des systèmes Linux : (chmod, cp, dd, ls, sort, tr, head, wc, who,...)
Nous allons les parcourir par type d'outil et citer un exemple d'utilisation.
Les commandes sont triées par type de commande puis par ordre alphabétique.
Voici sur un système Red Hat 8 la liste des commandes :
Code TEXT :
/usr/bin/[ /usr/bin/arch /usr/bin/b2sum /usr/bin/base32 /usr/bin/base64 /usr/bin/basename /usr/bin/cat /usr/bin/chcon /usr/bin/chgrp /usr/bin/chmod /usr/bin/chown /usr/bin/cksum /usr/bin/comm /usr/bin/cp /usr/bin/csplit /usr/bin/cut /usr/bin/date /usr/bin/dd /usr/bin/df /usr/bin/dir /usr/bin/dircolors /usr/bin/dirname /usr/bin/du /usr/bin/echo /usr/bin/env /usr/bin/expand /usr/bin/expr /usr/bin/factor /usr/bin/false /usr/bin/fmt /usr/bin/fold /usr/bin/groups /usr/bin/head /usr/bin/hostid /usr/bin/id /usr/bin/install /usr/bin/join /usr/bin/link /usr/bin/ln /usr/bin/logname /usr/bin/ls /usr/bin/md5sum /usr/bin/mkdir /usr/bin/mkfifo /usr/bin/mknod /usr/bin/mktemp /usr/bin/mv /usr/bin/nice /usr/bin/nl /usr/bin/nohup /usr/bin/nproc /usr/bin/numfmt /usr/bin/od /usr/bin/paste /usr/bin/pathchk /usr/bin/pinky /usr/bin/pr /usr/bin/printenv /usr/bin/printf /usr/bin/ptx /usr/bin/pwd /usr/bin/readlink /usr/bin/realpath /usr/bin/rm /usr/bin/rmdir /usr/bin/runcon /usr/bin/seq /usr/bin/sha1sum /usr/bin/sha224sum /usr/bin/sha256sum /usr/bin/sha384sum /usr/bin/sha512sum /usr/bin/shred /usr/bin/shuf /usr/bin/sleep /usr/bin/sort /usr/bin/split /usr/bin/stat /usr/bin/stdbuf /usr/bin/stty /usr/bin/sum /usr/bin/sync /usr/bin/tac /usr/bin/tail /usr/bin/tee /usr/bin/test /usr/bin/timeout /usr/bin/touch /usr/bin/tr /usr/bin/true /usr/bin/truncate /usr/bin/tsort /usr/bin/tty /usr/bin/uname /usr/bin/unexpand /usr/bin/uniq /usr/bin/unlink /usr/bin/users /usr/bin/vdir /usr/bin/wc /usr/bin/who /usr/bin/whoami /usr/bin/yes
Outils pour les fichiers
chcon permet de changer le contexte de sécurité SELinux d'un fichier :
Code BASH :
chcon -R -t httpd_sys_rw_content_t /server/www
chgrp permet de changer le groupe propriétaire d'un fichier :
Code BASH :
chgrp users fichier.txt
chown permet de cnager l'utilisateur d'un fichier :
Code BASH :
chown -R adrien /home/adrien
cp permet de copier un fichier :
Code BASH :
cp fichier.txt copie_de_fichier.txt
dd permet la copie brute d'un périphérique physique :
Code BASH :
dd if=/dev/sda1 of=/home/adrien/copie_brute_de_sda1
df permet de montrer l'espace disque occupé par un système de fichiers monté :
Code BASH :
df -h
Code TEXT :
Sys. de fichiers Taille Utilisé Dispo Uti% Monté sur devtmpfs 10M 0 10M 0% /dev tmpfs 7,9G 352M 7,5G 5% /dev/shm tmpfs 7,9G 1,5M 7,9G 1% /run /dev/mapper/rootvg-gentoo 84G 63G 17G 80% / cgroup_root 10M 0 10M 0% /sys/fs/cgroup /dev/sda3 975M 192M 717M 22% /boot /dev/sda1 99M 249K 99M 1% /boot/efi /dev/mapper/rootvg-home 138G 104G 33G 77% /home /dev/sdb1 1,8T 1,8T 81G 96% /media/DATA /dev/mapper/rootvg-vmssd 84G 35G 49G 42% /media/SSD tmpfs 1,6G 68K 1,6G 1% /run/user/1000
dir liste les fichiers de la même manière que ls -Cb :
Code BASH :
dir /
Code TEXT :
bin dev home lib64 media opt root sbin srv tmp var boot etc lib lost+found mnt proc run selinux sys usr
install permet de copier un fichier et paramétrer ses attributs :
Code BASH :
install -m750 script.sh /usr/bin/monscriptperso
ln permet de créer un lien (symbolque ou physique) vers un fichier :
Code BASH :
ln -s fic lien_vers_fic
ls permet de lister les fichiers :
Code BASH :
ls -l /home
Code TEXT :
drwxrwxr-x 17 adeline nous 4096 27 sept. 2020 adeline drwx-----x 101 adrien nous 20480 18 juin 09:01 adrien drwxr-xr-x 3 1002 1004 4096 11 avril 2019 invite
mkdir permet de créer un répertoire :
Code BASH :
mkdir dossier
mkfifo permet de créer un tube nommé fifo sous forme de fichier :
Code BASH :
mkfifo monfifo
mktemp permet de créer un nom unique pour un fichier temporaire :
Code BASH :
mktemp adrien.XXXX
mv permet de déplacer (ou renommer) un fichier :
Code BASH :
mv adrien adrien_new
rm permet de supprimer un fichier :
Code BASH :
rm fichier.txt
rmdir permet de supprimer un répertoire s'il est vide :
Code BASH :
rmdir dossier
shred permet d’écraser le contenu d'un fichier (s'applique aussi à un disque, une partition ) :
Code BASH :
shred fichier.txt
sync permet d'exécuter immédiatement les requêtes en écriture qui sont en attente :
Code BASH :
sync
touch permet de créer un fichier vide ou modifier le timestamp d'un fichier :
Code BASH :
touch fichiervide
truncate permet de réduire ou augmenter la taille d'un fichier donné :
Code BASH :
truncate -s 5K ls_help
vdir liste les fichiers de la même manière que ls -lb :
Code BASH :
vdir /home
Code TEXT :
drwxrwxr-x 17 adeline nous 4096 27 sept. 2020 adeline drwx-----x 101 adrien nous 20480 18 juin 09:01 adrien drwxr-xr-x 3 1002 1004 4096 11 avril 2019 invite
realpath affiche le chemin absolu d'un fichier, d'un lien symbolique :
Code BASH :
realpath lien_vers_fic
Code TEXT :
/root/fic
Outils pour le texte
[code=bash][/code]
[code=bash][/code]
Outils pour les shells
Archives
arch
Cette commande affiche l'architecture de la machine :
Code BASH :
arch
Code TEXT :
i686
cat
Cette commande affiche le contenu d'un fichier :
Code BASH :
cat fichier.txt
Code TEXT :
Bonjour Voici un fichier Au revoir
cd
Cette commande permet de changer de répertoire :
Code BASH :
cd /home
chgrp
Cette commande change le groupe propriétaire d'un fichier :
Code BASH :
chgrp users fichier.txt
chmod
Cette commande change les droits d'un fichier :
Code BASH :
chmod +x fichier.txt
chown
Cette commande change l'utilisateur propriétaire d'un fichier :
Code BASH :
chown adrien fichier.txt
cp
Cette commande copie un fichier :
Code BASH :
cp fichier.txt copie.txt
date
Cette commande affiche la date :
Code BASH :
date
df
Cette commande affiche la liste des systèmes de fichiers montés et l'espace occupé de chacun :
Code BASH :
df
Code TEXT :
Sys. de fichiers blocs de 1K Utilisé Disponible Uti% Monté sur /dev/md0p1 28706020 2746020 24478776 11% / devtmpfs 10240 0 10240 0% /dev shm 771096 0 771096 0% /dev/shm tmpfs 771096 496 770600 1% /run cgroup_root 10240 0 10240 0% /sys/fs/cgroup /dev/md0p4 69021192 14804904 50687176 23% /home /dev/md0p3 51475068 2965840 45871404 7% /var
du
Cette commande affiche la taille d'un dossier :
Code BASH :
du -h /bin
Code TEXT :
7.7M /bin
echo
Cette commande affiche du texte :
Code BASH :
echo coucou
Code TEXT :
coucou
exit
Cette commande quitte l'interpréteur de commande :
Code BASH :
exit
find
Cette commande recherche des fichiers :
Code BASH :
find *.txt
Code TEXT :
copie.txt fichier.txt
free
Cette commande affiche l'état de la mémoire vive (RAM) et de pagination (SWAP) utilisée :
Code BASH :
free
Code TEXT :
total used free shared buffers cached Mem: 1542196 1412488 129708 33652 252100 576296 -/+ buffers/cache: 584092 958104 Swap: 3906248 40340 3865908
grep
Cette commande affiche les lignes d'un fichier correspondant à une expression
Code BASH :
grep Bonjour fichier.txt
Code TEXT :
Bonjour
groups
Cette commande affiche la liste des groupes dont fait partie l'utilisateur :
Code BASH :
groups
Code TEXT :
lp wheel uucp cron audio cdrom video cdrw usb users adrien
head
Cette commande affiche les premières lignes de fichiers :
Code BASH :
head -2 fichier.txt
Code TEXT :
Bonjour Voici un fichier
hostname
Cette commande affiche le nom d'hôte de la machine :
Code BASH :
hostname
Code TEXT :
oxygen.linuxtricks.fr
id
Cette commande affiche l'ID de l'utilisateur, l'ID du groupe et les groupes de l'utilisateur :
Code BASH :
id
Code TEXT :
uid=1000(adrien) gid=1000(adrien) groupes=1000(adrien),7(lp),10(wheel),14(uucp),16(cron),18(audio),19(cdrom),27(video),80(cdrw),85(usb),100(users)
kill
Cette commande tue un processus par son PID (Processus IDentifier) :
Code BASH :
kill 25202
Code TEXT :
[1]+ Complété cat /dev/zero > /dev/null
killall
Cette commande tue tous les processus par son nom :
Code BASH :
killall cat
Code TEXT :
[1]+ Complété cat /dev/zero > /dev/null
last
Cette commande affiche les derniers utilisateurs connectés sur le système :
Code BASH :
last -n 3
Code TEXT :
adrien pts/4 94.185.65.78 Sat Aug 29 07:33 gone - no logout adrien pts/4 10.21.27.100 Sat Aug 29 06:50 - 07:33 (00:42) adrien pts/3 89.158.55.229 Sat Aug 29 06:44 - 09:24 (02:40) wtmp commence Sun Apr 26 18:17:01 2015
ldd
Cette commande affiche les librairies partagées d'un programme :
Code BASH :
ldd /bin/bash
Code TEXT :
linux-gate.so.1 (0xb76ea000) libreadline.so.6 => /lib/libreadline.so.6 (0xb769f000) libncurses.so.5 => /lib/libncurses.so.5 (0xb7654000) libc.so.6 => /lib/libc.so.6 (0xb74bb000) /lib/ld-linux.so.2 (0xb76eb000)
ln
Cette commande créé des liens vers des fichiers :
Code BASH :
ln -s fichier.txt lien-vers-fichier.txt
logname
Cette commande affiche le nom d'utilisateur connecté :
Code BASH :
logname
Code TEXT :
adrien
ls
Cette commande liste le contenu d'un répertoire :
Code BASH :
ls
Code TEXT :
copie.txt fichier.txt lien-vers-fichier.txt
man
Cette commande (très utile) affiche le manuel d'utilisation d'une commande :
Code BASH :
man bash
md5sum
Affiche la somme MD5 d'un fichier :
Code BASH :
md5sum fichier.txt
Code TEXT :
dfee7f76979716f722d7caa4a774b5c8 fichier.txt
mkdir
Cette commande créé un répertoire
Code BASH :
mkdir test
mv
Cette commande déplace un fichier ou le renomme :
Code BASH :
mv fichier.txt fichier-renomme.txt
nl
Cette commande affiche le nombre de lignes d'un fichier :
Code BASH :
nl fichier.txt
Code TEXT :
1 Bonjour 2 Voici un fichier 3 Au revoir
pidof
Cette commande affiche le PID d'un processus par son nom :
Code BASH :
pidof cat
Code TEXT :
25520
ping
Cette commande contacte un hôte par son adresse IP ou son nom :
Code BASH :
ping -c 2 linuxtricks.fr
Code TEXT :
PING linuxtricks.fr (212.227.108.142) 56(84) bytes of data. 64 bytes from 212.227.108.142: icmp_seq=1 ttl=50 time=32.5 ms 64 bytes from 212.227.108.142: icmp_seq=2 ttl=50 time=25.6 ms -.-.- linuxtricks.fr ping statistics -.-.- 2 packets transmitted, 2 received, 0% packet loss, time 1001ms rtt min/avg/max/mdev = 25.622/29.105/32.589/3.487 ms
ps
Cette commande affiche les processus en cours d'exécution :
Code BASH :
ps
Code TEXT :
PID TTY TIME CMD 20605 pts/4 00:00:00 bash 25520 pts/4 00:01:29 cat 25573 pts/4 00:00:00 ps
pstree
Cette commande affiche les processus sous la forme d'un arbre :
Code BASH :
pstree
Code TEXT :
init-+-6*[agetty] |-apache2-+-apache2 | `-2*[apache2---26*[{apache2}]] |-cron |-dhcpd |-fail2ban-server---2*[{fail2ban-server}] |-mdadm |-mysqld---43*[{mysqld}] |-named---4*[{named}] |-ntpd |-python2-+-python2---10*[{python2}] | |-python2 | `-12*[{python2}] |-rsyslogd-+-{in:imklog} | |-{in:imuxsock} | `-{rs:main Q:Reg} |-screen---bash---su---bash |-screen---bash---irssi---{gmain} |-sshd-+-sshd---sshd-+-bash | | `-4*[{sshd}] | `-sshd---sshd-+-bash-+-cat | | `-pstree | `-4*[{sshd}] |-udevd |-zabbix_agentd---5*[zabbix_agentd] `-zabbix_server---26*[zabbix_server]
pwd
Cette commande affiche le répertoire dans lequel on se trouve :
Code BASH :
pwd
Code TEXT :
/home/adrien/test
rm
Cette commande supprime un fichier ou un répertoire :
Code BASH :
rm fichier.txt
rmdir
Cette commande supprime un dossier :
Code BASH :
rmdir test
sed
Cette commande permet d'éditer le flux ou un fichier et de transformer le texte :
Code BASH :
echo "Mon nom est adrien" | sed -e 's/adrien/christophe/g'
Code TEXT :
Mon nom est christophe
shutdown
Cette commande sert à arrêter ou redémarrer le système :
Code BASH :
shutdown now
tail
Cette commande affiche les dernières lignes d'un fichier :
Code BASH :
tail -n 2 fichier.txt
Code TEXT :
Voici un fichier Au revoir
touch
Cette commande change la date de dernier accès d'un fichier. S'il n'existe pas, un fichier vide est créé :
Code BASH :
touch fichier.txt
tty
Cette commande affiche le nom du terminal actuellement utilisé :
Code BASH :
tty
Code TEXT :
/dev/pts/4
uname
Cette commande affiche le nom d'hôte, le noyau utilisé, sa version, le processeur :
Code BASH :
uname -a
Code TEXT :
Linux oxygen.linuxtricks.fr 3.18.20-calculate #1 SMP Sun Aug 9 20:25:17 UTC 2015 i686 Intel(R) Pentium(R) 4 CPU 2.80GHz GenuineIntel GNU/Linux
uptime
Cette commande affiche la charge système et son temps de fonctionnement :
Code BASH :
uptime
Code TEXT :
10:41:58 up 16 days, 2:09, 2 users, load average: 1.21, 1.07, 0.81
users
Cette commande affiche le nom des utilisateurs connectés :
Code BASH :
users
Code TEXT :
adrien root
w
Cette commande montre les utilisateurs connectés et ce qu'ils font :
Code BASH :
w
Code TEXT :
10:43:09 up 16 days, 2:10, 2 users, load average: 1.33, 1.13, 0.85 USER TTY LOGIN@ IDLE JCPU PCPU WHAT adrien pts/0 01:27 9:15m 0.00s 0.00s -bash adrien pts/4 07:33 6.00s 13:36 0.00s w
wall
Cette commande envoie un message à tout le monde sur le système (Attention, cela affiche même si vous éditez en console un fichier) :
Code BASH :
wall Bonjour à tous
whatis
Cette commande affiche une brève description de ce qu'est la commande associée :
Code BASH :
whatis bash
Code TEXT :
bash (1) - GNU Bourne-Again SHell
who
Cette commande affiche qui est connecté sur le système :
Code BASH :
who
Code TEXT :
adrien pts/0 2015-08-29 01:27 (94.185.65.78) adrien pts/4 2015-08-29 07:33 (94.185.65.78)
whereis
Cette commande affiche l'emplacement d'un fichier exécutable, d'une source ou d'un manuel :
Code BASH :
whereis bash
Code TEXT :
bash: /bin/bash /etc/bash /usr/share/man/man1/bash.1.bz2