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édente | ||
| atelier20211120-cli_is_fun-run [2021/12/06 11:51] – wap | atelier20211120-cli_is_fun-run [2021/12/06 11:58] (Version actuelle) – 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' | + | |
| - | * `--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 | + | |
| - | * `~` : 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 | + | |
| - | * les erreurs restent visibles à l' | + | * les erreurs restent visibles à l' |
| ===== Exemple 3 ===== | ===== Exemple 3 ===== | ||
| Ligne 72: | Ligne 72: | ||
| Outil de traitement et d' | Outil de traitement et d' | ||
| - | 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 | + | |
| - | * `[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 | + | |
| - | * `[^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: | + | |
| - | * 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 193: | Ligne 193: | ||
| ===== Quelques références ===== | ===== Quelques références ===== | ||
| - | * https:// | + | |
| - | * https:// | + | * [[https:// |
| - | * https:// | + | * [[https:// |
| - | * https:// | + | * [[https:// |
| - | * https:// | + | * [[https:// |
| ===== Merci ===== | ===== Merci ===== | ||
atelier20211120-cli_is_fun-run.1638791494.txt.gz · Dernière modification : 2021/12/06 11:51 de wap