Journal Des "basheries"

Posté par  . Licence CC By‑SA.
Étiquettes :
89
29
nov.
2016

Salut,

Voici un journal qui répertorie les quelques raccourcis et commandes que j'ai découverts au fil du temps et de balades sur le net (blogs, forums, wiki, man bash, etc.). J'essaie de faire une liste ici de ceux qui me semblent vraiment utiles pour l'utilisation quotidienne du terminal par un utilisateur lambda. Je fais partie de cette catégorie, je ne suis ni un programmeur, ni un utilisateur averti, je fais de la recherche en sciences humaines et sociales et de (…)

Une faille nommée « shellshock »

82
28
sept.
2014
Sécurité

« ShellShock », une faille dans l'usage du shell Bash, est sous les projecteurs depuis quelques jours. Le terme est un jeu de mot entre la stupeur propre à l'obusite des combattants de la première guerre mondiale et l'interface système shell. Nous vous proposons des explications sur cet évènement particulier, son périmètre, les conditions de son exploitation, les surfaces d'attaques, et les solutions proposées, déjà mises en œuvre ou à venir. Enfin, une revue de presse sera dressée, cette faille s'étant transformée en évènement.

Journal Faire de la magie avec son .inputrc

Posté par  (site web personnel) . Licence CC By‑SA.
81
24
mar.
2015

Bonjour nal et naleux,

Faites-vous partie de ces barbus définissant des dizaines et des dizaines d'alias dans leur .bashrc, afin d'enlarge your productivity au maximum ? Mais savez-vous qu'il existe un fichier encore pluss trop bien, permettant de faire virevolter votre productivité à un niveau inégalé : le .inputrc ?

Celui-ci permet de définir des raccourcis claviers qui seront disponibles dans tous les clients utilisant readline (donc bash, mais pas zsh… Raison principale pour laquelle je ne suis toujours pas passé (…)

GameShell, apprendre les rudiments du shell en s'amusant

Posté par  . Édité par claudex et Pierre Jarillon. Modéré par Pierre Jarillon. Licence CC By‑SA.
80
26
mar.
2021
Ligne de commande

Il y a 4 ans, j'ai pris en charge un nouveau cours intitulé « système d'exploitation » en première année de licence. Le programme est assez large, avec un peu d'architecture, un peu de système, et même un peu de réseau. Là dedans, je devais faire une introduction au shell. Le risque avec ce genre du truc, c'est de se retrouver avec un catalogue de commandes qui rebutera même les étudiants les plus motivés.

Et c'est comme ça qu'est né GameShell, ou gash pour les intimes. GameShell est un jeu où il faut entrer des commandes dans un shell (bash) pour valider des « missions ». Comme il n'y a pas eu de gros bug ces deux dernières années, je me dis que je pouvais en faire la pub. (Attention, il reste probablement plein de bugs. C'est juste que les étudiants ne sont pas encore tombés dessus !). Ça peut intéresser les gens qui veulent apprendre, ou enseigner les rudiments du shell.

Le code est disponible sur GitHub (promis, je changerais un de ces jours) avec une licence GPL : GameShell sur GitHub

N'hésitez pas à me faire des retours d'utilisation, des rapports de bugs, proposer des fonctionnalités, ajouter des missions, etc.
Si vous l'utilisez « en public », ça serait juste bien d'inclure un lien vers le dépôt et / ou mon nom.

GameShell est un jeu en ligne de commandes, où le joueur doit taper des commandes bash pour valider des « missions ».

Coloriser des flux de texte avec colout

Posté par  (site web personnel, Mastodon) . Édité par Benoît Sibaud. Modéré par claudex. Licence CC By‑SA.
65
4
avr.
2013
Ligne de commande

Les réalisateurs de films policiers ne s'y trompent pas : lire des flux de textes en ligne de commande nécessite parfois le super pouvoir de lisibilité.

Bien que les outils GNU soient extrêmement pratiques pour manipuler des flux de texte, il en manquait un pour aider à mettre en valeur l'information importante, sans masquer l'accessoire. Par exemple pour faciliter la lecture de logs s'étendant sur plusieurs lignes ou pour détecter rapidement le numéro de ligne d'un fichier responsable d'une erreur de compilation.

Heureusement, grâce à la commande colout (aujourd'hui en version 1.0), vous pouvez maintenant très facilement coloriser colorer colorier mettre de la couleur là où vous le souhaitez dans votre ligne de commande.

Basiquement, colout s'utilise comme un filtre de flux de texte classique, généralement après un pipe, et mets en valeur les bouts de texte correspondant à une expression régulière avec une couleur et un style de votre choix :

    <flux de texte> | colout <expression régulière> [couleur [style]]

L'IHM de colout est pensée pour être simple tout en permettant des utilisations vraiment intéressantes, telles que le coloriage l'application des couleurs sur les groupes des expressions, l'utilisation de cartes de couleurs (mais si, vous savez, les couleurs de l'arc-en-ciel…), la coloration la mise en valeur de la syntaxe de code source, des thèmes automatiques et même l'application d'une couleur en fonction de la valeur d'un nombre.

Journal De la rigueur dans la programmation

64
5
fév.
2026

Le boulot des développeurs change constamment et pourtant l'histoire me semble se répéter. Dis-moi si toi aussi tu vois une constante émerger des outils qui suivent.

Assembleur

Connais-tu ce merveilleux langage qu'est l'assembleur ? C'est le premier langage de programmation. En assembleur il n'y a pas de type de donnée, ni même de code en fait. Tout n'est qu'octet, et encore si l'architecture utilise des octets.

L'assembleur c'est pénible. On ne comprend rien, toute l'information est dupliquée dans des commentaires (…)

Journal Mes nautilus scripts

Posté par  (site web personnel) . Licence CC By‑SA.
62
22
jan.
2015

Il était une fois

La possibilité de modifier des fichiers dans le navigateur idoine à l’aide de scripts m’a toujours beaucoup intéressé. Il y a longtemps j’avais d’ailleurs modestement participé au projet g-scripts. Les nautilus scripts me plaisent car il suffit de créer un nouveau fichier dans un dossier spécifique pour que celui-ci soit disponible, un seul fichier, c’est simple (du coup je n’aime pas tellement nautilus-actions ou la solution de thunar… mais c’est une histoire de goût…). Enfin (…)

Journal Mets à jour ton bash. Maintenant.

Posté par  . Licence CC By‑SA.
55
24
sept.
2014

Bonjour, Nal

Un journal bookmark pour signaler : faut mettre à jour bash
Voilà, c'est tout. Vous pouvez reprendre une activité normale.

Pour les autres, qui ne vont pas reprendre une activité normale de suite, on pourra résumer cela en "c'est sérieux, urgent, et mérite peut être une campagne de patch au pied levé". Cette découverte, qui date d'une vingtaine de jours aujourd'hui, vient d'avoir ses correctifs validés, à priori (…).
Sans cela, il est possible de faire, par exemple (…)

Interminable liste de terminaux

50
14
oct.
2025
Ligne de commande

Ah, la ligne de pêche Maginot commande ! Que ce soit pour gérer ses fichiers, récupérer des commits, lancer une compilation, se connecter à un serveur, redémarrer un service, consulter les logs, voire contrôler la musique, afficher des images, cette interface reste en 2025 exceptionnellement boomer rapide et même parfois confortable.

Sans compter que le terminal est l'endroit où lancer des applications dédiées, pour lire ses mails ou un million d'autres choses.

Bref rappel avant se lancer dans de longues comparaisons

  • TTY vient de teletypewriter. Si vous tapez (Xorg comme Wayland) Control + Alt + F3 par exemple, vous vous retrouverez devant une invite de commande.
  • pts/pty : quand vous ouvrez un terminal

L'invite de commande pourra bénéficier d'un shell personnalisé. Le bureau permettra l'usage d'un terminal.

Journal Bash et les raccourcis clavier

Posté par  . Licence CC By‑SA.
Étiquettes :
50
18
sept.
2017

Bonjour nal.

Aujourd’hui je vais parler des raccourcis clavier sur Bash. Parce que j’en ai envie.

C’est très pratique et reposant de pouvoir manipuler Bash en bougeant le moins possible ses mains. Tant qu’on écrit du texte, c’est facile. Mais, très souvent, on a besoin de bouger le curseur d’écriture, de supprimer un caractère, d’avoir l’auto‐complétion, etc. Pour cela, le réflexe est d’utiliser les touches dédiées du clavier : Tab, , « Retour charriot », etc. Ces touches étant aux bords du (…)

Journal Host@home : faciliter l'auto-hébergement

47
27
avr.
2014

On vous dit que google conserve vos données, que facebook les communique à des tiers. Vous vous sentez concernés par les articles parlant de vie privée. Alors ça y est, c'est décidé, vous ne dépendrez plus de sociétés tierces pour héberger vos courriels, pour échanger des fichiers avec vos contacts… Vous allez vous auto-héberger.

Super.

Euh, par contre, comment on fait? Entre le nom de domaine à louer, la machine à choisir en tant que serveur, les lignes de (…)

Journal Script pour se désinscrire massivement des listes publicitaires

Posté par  (site web personnel, Mastodon) . Licence CC By‑SA.
Étiquettes :
47
17
fév.
2020

Bonjour,

j’ai un compte de messagerie que je n’utilise plus beaucoup, entre autres choses parce qu’il est sévèrement spammé (typiquement 15 pourriels par jour). Je sais qu’il est conseillé de ne pas cliquer sur les liens de désinscription, mais pour ce compte je n’ai plus grand’chose à perdre. J’ai donc décidé d’expérimenter la chose à grande échelle (pas question de le faire à la main, je vais m’épuiser à ce rythme‑là).

Je ne suis bien sûr pas le seul à (…)

Bash Argsparse : mieux gérer sa ligne de commande dans ses scripts.

Posté par  (site web personnel) . Édité par Xavier Teyssier, Benoît Sibaud et ZeroHeure. Modéré par claudex. Licence CC By‑SA.
46
10
oct.
2013
Ligne de commande

Je vous présente une bibliothèque écrite en Shell : bash-argsparse

Bash-argsparse permet une gestion des options de la ligne de commande en plus haut niveau qu'un simple getopt, un peu comme le module argparse de python.

Parmi la liste des fonctionnalités, on trouve :

  • la génération automatique du --help ;
  • la vérification des entrées utilisateurs, soit suivant des énumérations, soit suivant des formats pré-établis (nombres entiers, adresses IP, etc.), soit via des résultats de fonctions définies par le développeur du script ;
  • l'exclusion mutuelle de plusieurs options ;
  • le cumul de valeur par répétition d'une option ;
  • et plein d'aut'trucs.

Bash 5 : une introduction

Posté par  . Édité par Ysabeau 🧶, Gil Cot ✔, Anonyme, Benoît Sibaud et palm123. Modéré par Ysabeau 🧶. Licence CC By‑SA.
44
5
août
2022
Ligne de commande

La troisième version du document « Introduction à la programmation en Bash » (IUT de Rodez) vient de paraître. Elle est principalement destinée aux étudiants de niveau Licence.

LiquidPrompt version 1.2

Posté par  (site web personnel, Mastodon) . Édité par baud123, Nils Ratusznik et NeoX. Modéré par Nÿco. Licence CC By‑SA.
42
16
jan.
2013
Ligne de commande

LiquidPrompt est un prompt clefs-en-main pour bash ou zsh, dont l'idée générale est d'afficher élégamment des informations utiles uniquement quand le contexte le demande.

De nombreuses nouveauté sont disponibles depuis la dernière linuxfrisation, notamment :

  • la gestion de zsh en plus de bash ;
  • des commandes pour désactiver temporairement le prompt (et revenir à l'ancien ou carrément tout désactiver) ;
  • de quoi configurer facilement le prompt dans des fichiers à soi (couleurs, thèmes, options) ;
  • la désactivation optionnelle de chaque fonctionnalité du prompt (même à chaud) ;
  • une couleur indiquant si le forwarding X est actif ;
  • gestion du chroot sous Debian et du virtualenv sous Python ;
  • la réplication du prompt dans le titre de la fenêtre ;
  • la gestion de Fossil (le gestionnaire de version) ;
  • la possibilité de masquer l'utilisateur, si c'est celui qui est loggué ;
  • l'utilisation du builtin DIRTRIM, sous bash, s'il est installé ;
  • un fichier .bashrc à utiliser pour l'installation ;
  • plein (mais alors plein) de bugs en moins et de vitesse en plus !