atelier20211120-cli_is_fun-run
Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédenteProchaine révisionLes deux révisions suivantes | ||
atelier20211120-cli_is_fun-run [2021/12/06 11:50] – wap | atelier20211120-cli_is_fun-run [2021/12/06 11:54] – wap | ||
---|---|---|---|
Ligne 7: | Ligne 7: | ||
===== Préambule ===== | ===== Préambule ===== | ||
- | La ligne de commande, c'est magique. Il existe des tas de sortilèges. Si vous êtes perdu, vous pouvez toujours demander votre chemin à `man` (le manuel). | + | La ligne de commande, c'est magique. Il existe des tas de sortilèges. Si vous êtes perdu, vous pouvez toujours demander votre chemin à man (le manuel). |
===== Exemple 1 ===== | ===== Exemple 1 ===== | ||
Ligne 25: | Ligne 25: | ||
==== Un petit mot concernant les arguments ==== | ==== Un petit mot concernant les arguments ==== | ||
- | Lorsqu' | + | Lorsqu' |
- | * `-h`: c'est une option courte (1 lettre): permet d' | + | * -h: c'est une option courte (1 lettre): permet d' |
- | * `--human-readable`: c'est une option longue: plus facile à lire / retenir | + | * --human-readable: |
==== Un petit alias peut-être ? ==== | ==== Un petit alias peut-être ? ==== | ||
exa c'est bien, mais c'est long à taper: créons un alias. | exa c'est bien, mais c'est long à taper: créons un alias. | ||
- | Dans votre fichier | + | Dans votre fichier ~/.bashrc ou ~/.zshrc, ajoutez: |
alias ll=" | alias ll=" | ||
Ligne 41: | Ligne 41: | ||
Notations particulières couramment utilisées: | Notations particulières couramment utilisées: | ||
- | * dossiers | + | * dossiers . et .. : dossier courant et parent |
- | * `~` : raccourci pour signifier "mon dossier personnel" | + | * ~ : raccourci pour signifier "mon dossier personnel" |
- | * `/` : caractère de séparation de dossiers dans un chemin | + | * / : caractère de séparation de dossiers dans un chemin |
- | * fichiers commençant par `.` : fichiers cachés | + | * fichiers commençant par . : fichiers cachés |
===== Exemple 2 ===== | ===== Exemple 2 ===== | ||
Ligne 54: | Ligne 54: | ||
==== Les redirections ==== | ==== Les redirections ==== | ||
- | Chaque programme peut rediriger la sortie écran (stdout) vers un fichier via l' | + | Chaque programme peut rediriger la sortie écran (stdout) vers un fichier via l' |
- | * `/dev/null` : pseudo-fichier qui ignore tout ce qu'on lui envoie | + | * /dev/null : pseudo-fichier qui ignore tout ce qu'on lui envoie |
* les erreurs restent visibles à l' | * les erreurs restent visibles à l' | ||
Ligne 74: | Ligne 74: | ||
https:// | https:// | ||
- | En gros, les mots sont séparés par un caractère blanc et sont numérotés de `$1` à `$x`. | + | En gros, les mots sont séparés par un caractère blanc et sont numérotés de $1 à $x. |
- | La ligne `{print $7}` signifie: | + | La ligne {print $7} signifie: |
affiche le septième champ (l' | affiche le septième champ (l' | ||
Ligne 84: | Ligne 84: | ||
Concept clé du shell UNIX, le pipe permet de rediriger la sortie d'un programme vers l' | Concept clé du shell UNIX, le pipe permet de rediriger la sortie d'un programme vers l' | ||
- | Il est représenté par le caractère | + | Il est représenté par le caractère | |
===== Exemple 4: encore awk ===== | ===== Exemple 4: encore awk ===== | ||
Ligne 92: | Ligne 92: | ||
awk '$9 == " | awk '$9 == " | ||
- | La ligne `$9 == " | + | La ligne $9 == " |
- | Si le neuvième champ de chaque ligne est `404`, alors affiche le septième champ. | + | Si le neuvième champ de chaque ligne est 404, alors affiche le septième champ. |
===== Exemple 5 ===== | ===== Exemple 5 ===== | ||
Ligne 108: | Ligne 108: | ||
Si aucun fichier n'est spécifié, recherche dans un dictionnaire. | Si aucun fichier n'est spécifié, recherche dans un dictionnaire. | ||
- | `.` signifie " | + | . signifie " |
==== grep ==== | ==== grep ==== | ||
Ligne 119: | Ligne 119: | ||
==== N' | ==== N' | ||
- | * `^` : rien avant | + | * ^ : rien avant |
- | * `[a-z]` : n' | + | * [a-z] : n' |
- | * `{4,8}` : répétée de 4 à 8 fois | + | * {4,8} : répétée de 4 à 8 fois |
- | * `$` : rien après | + | * $ : rien après |
==== xargs ==== | ==== xargs ==== | ||
Parfois, il n'est pas possible que la sortie d'une commande corresponde à l' | Parfois, il n'est pas possible que la sortie d'une commande corresponde à l' | ||
- | xargs permet de se sortir de situations parfois difficiles où il n'est pas possible d' | + | xargs permet de se sortir de situations parfois difficiles où il n'est pas possible d' |
Par défaut, xargs affiche ce qu'il reçoit sur 1 ligne. L' | Par défaut, xargs affiche ce qu'il reçoit sur 1 ligne. L' | ||
Ligne 139: | Ligne 139: | ||
grep ' | grep ' | ||
- | * `^` : rien avant | + | * ^ : rien avant |
- | * `[^x]` : qui n'est pas le caractère | + | * [^x] : qui n'est pas le caractère x. |
===== Du fun, du fun, du fun ===== | ===== Du fun, du fun, du fun ===== | ||
Ligne 148: | Ligne 148: | ||
Les outils indispensables: | Les outils indispensables: | ||
- | * Mettez de la couleur dans vos terminaux: | + | * Mettez de la couleur dans vos terminaux: lolcat |
- | * Inspectez votre machine: | + | * Inspectez votre machine: neofetch |
- | * Réalisez des bannières avec style: | + | * Réalisez des bannières avec style: figlet |
- | * Invitez une vache dans le terminal: | + | * Invitez une vache dans le terminal: cowsay |
- | * Faites parler chuck norris: | + | * Faites parler chuck norris: fortune-mod-chucknorris |
==== La météo ==== | ==== La météo ==== | ||
Ligne 169: | Ligne 169: | ||
figlet -tc -f shadow "Merci de votre attention \!" | lolcat | figlet -tc -f shadow "Merci de votre attention \!" | lolcat | ||
- | La sortie de figlet peut être redirigée vers `/etc/motd` (message of the day). | + | La sortie de figlet peut être redirigée vers /etc/motd (message of the day). |
==== Ultra combo ! ==== | ==== Ultra combo ! ==== | ||
Ligne 188: | Ligne 188: | ||
yes $COLUMNS $LINES|awk ' | yes $COLUMNS $LINES|awk ' | ||
- | {e*=-1}; | + | |
- | | + | printf " |
===== Quelques références ===== | ===== Quelques références ===== |
atelier20211120-cli_is_fun-run.txt · Dernière modification : 2021/12/06 11:58 de wap