Outils pour utilisateurs

Outils du site


issue189:c_c

Welcome back to another edition of FCM, may your year be filled with Ubuntu. Since we have been spending a lot of time in the terminal, let’s discuss some terminal tips. Bring on the disco fonts as we do some tinkering and a little deeper dive (just so you know what you are copying from some random website) for the total n00bs. Before we start, this is a how and why, rather than a copy-paste job. OK, just kidding – we won’t be going that far, I mean lolcat and rotflcat is fun, but you do not want to pump everything through there. Then again, Pimp my Ride was as fake as a $9 note, so we will skip pre-made scripts. Bash is everywhere, chances of you finding another shell when you connect to another machine are low. Yes, we know things like Fish exist, but bash is functional and usually ships with Ubuntu by default. Bash is a collection of variables, which simply means things that can change. (Yes, sometimes it does things too, but let’s go with the flow).

Bienvenue dans une nouvelle édition de FCM ; que votre année soit remplie d'Ubuntu.

Puisque nous avons passé beaucoup de temps dans le terminal, discutons de quelques astuces pour celui-ci. Apportez les polices disco car nous faisons quelques bricolages et une petite plongée plus profonde (juste pour que vous sachiez ce que vous copiez d'un site Web aléatoire) pour les débutants complets.

Avant de commencer, il s'agit d'un comment et d'un pourquoi, plutôt que d'un travail de copier-coller.

OK, je plaisante - nous n'irons pas aussi loin, je veux dire que lolcat et rotflcat, c'est amusant, mais vous ne voulez pas tout pomper par ce biais. Et puis, Pimp my Ride était aussi faux qu'un billet de 9 dollars, donc nous allons éviter les scripts préfabriqués.

Bash est partout, les chances que vous trouviez un autre shell lorsque vous vous connectez à une autre machine sont faibles. Oui, nous savons que des choses comme Fish existent, mais bash est fonctionnel et généralement livré avec Ubuntu par défaut.

Bash est une collection de variables, ce qui signifie simplement des choses qui peuvent changer. (Oui, parfois il fait des choses aussi, mais suivons le mouvement).

Here are some environment variables that an average user may encounter: • PWD – Current working directory. • HOME – The user’s home directory location. • SHELL – Current shell (bash, zsh, etc.). • LOGNAME – Name of the user. • UID – User’s unique identifier. • HOSTNAME – Device’s hostname on the network. • MAIL – User’s mail directory. • EDITOR – The Linux system default text editor. • TEMP – Directory location for temporary files. To view all environment variables use the “printenv” command to view all environment variables. Since there are many variables on the list, use the less command to control the view: printenv | less or we can taste the rainbow, but only once: printenv | less | lolcat If you were paying attention, you would see that they are all in caps, and because they are variables, they need to be prefixed by a $ - dollar sign, when you use them in commands; for instance, if I wanted to see my LOGNAME, I’d type: echo $LOGNAME.

Voici quelques variables d'environnement qu'un utilisateur moyen peut rencontrer : ••PWD - Répertoire de travail actuel. ••HOME - Emplacement du répertoire personnel de l'utilisateur. ••SHELL - Shell actuel (bash, zsh, etc.). ••LOGNAME - Nom de l'utilisateur. ••UID - Identifiant unique de l'utilisateur. ••HOSTNAME - Nom d'hôte du périphérique sur le réseau. ••MAIL - Répertoire de messagerie de l'utilisateur. ••EDITOR - L'éditeur de texte par défaut du système Linux. ••TEMP - Emplacement du répertoire pour les fichiers temporaires.

Pour afficher toutes les variables d'environnement, utilisez la commande « printenv ». Comme il y a beaucoup de variables dans la liste, utilisez la commande less pour contrôler l'affichage :

printenv | less

ou nous pouvons goûter à l'arc-en-ciel, mais seulement une fois :

printenv | less | lolcat

Si vous êtes attentif, vous verrez qu'elles sont toutes en majuscules, et parce que ce sont des variables, elles doivent être préfixées par le signe $ - dollar lorsque vous les utilisez dans des commandes ; par exemple, si je voulais voir mon LOGNAME, je taperais : echo $LOGNAME.

Since I always create three users, ed, edd and eddy to test things with, it can be handy for me to see which profile I am in, you may have only one, but the idea stands. Environmental variables can be stored in a few places, like ~/.bashrc or .bash-profile or just .profile – so be sure to look at what “dotfiles” you have. Dotfiles are hidden configuration files, much like Windows .cfg or .ini files. If you use a fancy GPU-Accelerated terminal, you can set it in your $TERM variable. There are four commands you need to remember here, to manipulate your environment variables, namely: export, env, set, and unset A lot of the settings can be set from a modern terminal, and as these vary from terminal to terminal, you may need to dig some. Here we will just look at a standard terminal. Usually things like, unlimited scroll back, can now be a tick-box away, though you may want to set that in the bashrc in your /etc/ folder, but that is out of the scope of this article.

Puisque je crée toujours trois utilisateurs, ed, edd et eddy, pour tester des choses, il peut être pratique pour moi de voir dans quel profil je suis ; vous pouvez n'en avoir qu'un, mais l'idée reste la même.

Les variables d'environnement peuvent être stockées à plusieurs endroits, comme ~/.bashrc ou .bash-profile ou simplement .profile, alors assurez-vous de regarder quels « dotfiles » (fichiers commençant par un point) vous avez. Les dotfiles sont des fichiers de configuration cachés, un peu comme les fichiers .cfg ou .ini de Windows. Si vous utilisez un terminal sophistiqué accéléré par GPU, vous pouvez le définir dans votre variable $TERM.

Il y a quatre commandes dont vous devez vous souvenir ici, pour manipuler vos variables d'environnement, à savoir : export, env, set et unset.

La plupart des paramètres peuvent être définis à partir d'un terminal moderne et, comme ils varient d'un terminal à l'autre, vous devrez peut-être creuser un peu. Ici, nous nous contenterons de regarder un terminal standard. Habituellement, des choses comme le retour illimité au début de la page peuvent maintenant être réglées à l'aide d'une case à cocher, bien que vous puissiez vouloir les régler dans le bashrc de votre dossier /etc/, mais cela n'entre pas dans le cadre de cet article.

Fonts, colours, background images are just a setting away if you open your terminal preferences. As you can see here, usually on the first three tabs. A word of warning about fonts: you may see a font you like, that looks good on a web page, that looks terrible on the terminal. Always test first! Let’s talk about customising your prompt: The prompt simply says, ‘you can type here’. The default prompt on most distro’s out of the box is usually USER@HOST that you set in the PS1 variable. You should see a $ at the end if you are a normal user, or a # if you are root. It does not need to say, user at host, it can say whatever you please. I’ll demonstrate at the end. (Don’t judge, I am not artistic.) TIP: If you use ‘nerd fonts’ (https://www.nerdfonts.com/) or powerline fonts, you can use fancy symbols to make images in your prompt. On that note, you can peek at your selected font’s glyphs: https://www.nerdfonts.com/cheat-sheet

Les polices, les couleurs et les images d'arrière-plan ne sont qu'à un réglage près si vous ouvrez les préférences de votre terminal. Comme vous pouvez le voir ici, ils se trouvent généralement dans les trois premiers onglets. Un mot d'avertissement à propos des polices : il se peut qu'une police que vous aimez, qui a l'air bien sur une page Web, ait l'air affreux sur le terminal. Testez-la toujours avant !

Parlons maintenant de la personnalisation de votre invite :

L'invite indique simplement « vous pouvez taper ici ». L'invite par défaut sur la plupart des distributions est généralement USER@HOST que vous avez défini dans la variable PS1. Vous devriez voir un $ à la fin si vous êtes un utilisateur normal ou un # si vous êtes root. Il n'est pas obligatoire de dire « user at host », vous pouvez dire ce que vous voulez. Je ferai une démonstration à la fin. (Ne jugez pas, je ne suis pas un artiste.)

ASTUCE : Si vous utilisez des polices « nerd » (https://www.nerdfonts.com/) ou des polices « powerline », vous pouvez utiliser des symboles fantaisistes pour créer des images dans votre invite.

À ce propos, vous pouvez jeter un coup d'œil aux glyphes de la police que vous avez sélectionnée : https://www.nerdfonts.com/cheat-sheet.

We are not going to list out all the backslash-escaped special characters you need to pimp your terminal, as it would just be reinventing the wheel. We will, however, point you to a great resource: https://www.cyberciti.biz/tips/howto-linux-unix-bash-shell-setup-prompt.html as this is an explanation, not a how-to. Another thing to remember is that modern terminals do not only support colors, but font weights too, so you may have something in bold or dimmed. Lastly, as a n00b, you may notice that your changes are not happening once you have made them. This is because you need to reload the current session to apply the changes. This is done by: source ~/.bashrc We hope this brings a better understanding and a desire to have your own prompt rather than something you saw on the internet that every second terminal has.

Nous n'allons pas dresser la liste de tous les caractères spéciaux avec antislash dont vous avez besoin pour améliorer votre terminal, car cela reviendrait à réinventer la roue. Nous vous indiquerons toutefois une excellente ressource : https://www.cyberciti.biz/tips/howto-linux-unix-bash-shell-setup-prompt.html. Il s'agit d'une explication et non d'un mode d'emploi.

N'oubliez pas non plus que les terminaux modernes ne prennent pas seulement en charge les couleurs, mais aussi le poids des polices, de sorte que vous pouvez avoir quelque chose en gras ou en dégradé.

Enfin, en tant que débutant, vous pouvez remarquer que vos modifications ne sont pas prises en compte une fois que vous les avez effectuées. Cela est dû au fait que vous devez recharger la session en cours pour appliquer les changements.

Cela se fait par :

source ~/.bashrc

Nous espérons que cela vous a permis de mieux comprendre et d'avoir envie de votre propre invite plutôt qu'une chose que vous avez vue sur l'Internet et qu'un terminal sur deux possède.

issue189/c_c.txt · Dernière modification : 2023/02/02 09:41 de auntiee