576 liens privés
Tout une liste d'alternatives aux commandes dans le terminal
Parce que je ne suis pas un expert dans la commande, je me notes ce mémo (oui, je suis sensé savoir cela sur le bout des doigts depuis 20 ans… mais bon…)
Astuces pour gérer des commandes en arrière-plan
- Le
&
en fin de ligne pour lancer en arrière-plan - Si on a oublié le
&
, on peut faire un[Ctrl]+[Z]
- Après un
[Ctrl]+[Z]
on peut lancer unbg
pour lancer en background - On peut utiliser le
fg
pour ramener en foreground (avant-plan) le dernier processus (ou bien indiquer le PID correspond). - Enfin
nohup
(en début de ligne cette fois-ci), s'affranchit du processus du terminal depuis lequel il est lancé pour fonctionner en arrière-plan (ie, on peut fermer la fenêtre).
Pour nettoyer un fichier je procède ainsi :
sed -i '/MonTexte/d' MonFichier.ext
Possibilité de créer un fichier de sauvegarde .bak
sed -i.bak '/MonTexte/d' MonFichier.ext
Après un joli freeze de mon interface, j'ai essayé de faire quelque-chose avec les tty. Mais n'ayant que peu l'occasion de l'utiliser, j'étais un peu démuni. Merci le smartphone :-)
Du coup :
- on trouve son premier télétype soit avec
[Ctrl]
+[Alt]
+[F1]
(c'est mon cas sur Ubuntu Mate) ou[Ctrl]
+[Alt]
+[F3]
; pour récupérer celui avec l'interface graphique c'est soit[F7]
, soit[F1]
. - pour voir « le monde », on peut faire un
who
ou untty
- et avec Korben (il a l'avantage d'être plutôt fiable selon sa hauteur dans les réponses d'un moteur de recherche), la commande
top
me revient - et on peut tuer un process avec
kill -9 <pid>
ou bien le recharger aveckill -1 <pid>
.
That's all folks!
Édition-2022-01-26T23:25 : puisque Seb m'envoie du trafic (PS : ça fait plaisir de voir que tu me lis toujours ;-) ), alors je vais me garder sous le coude ici ses astuces car je pourrais en avoir besoin ultérieurement :
Astuces supplémentaires:
htop est bien meilleur que top:
- touche "P" pour voir les processus qui consomment le plus de CPU
- "M" : même chose pour la mémoire vive
- "t" pour voir la hiérarchie des processus (qui a lancé qui).
- "H" pour afficher/masquer les threads des processus (je recommande de masquer)
- F3 pour rechercher un processus
- F4 pour filtrer les processus
- "k" pour tuer un processus. Envoyer d'abord 15 (SIGTERM) pour lui demande gentiment de s'arrêter. S'il n'obéit pas, le tuer avec un 9 (SIGKILL)
pkill nomduprocessus est plus pratique que kill (il a même l'auto-complétion: pkill st
te donnera steam) Quand tu as ton terminal avec CTRL+ALT+F1/F2/F3, si la machine n'arrive pas à te donner la mire de connexion, tu peux lui balancer un CTRL+ALT+SUPPR dans la tronche pour le forcer à rebooter (ça va quand même le forcer à flusher le cache disque).
Si par hasard ce sont les accès disque qui mettent la machine par terre, un "sudo iotop" te montrera les applications qui font le plus de lectures/écritures disque.
D'une manière général quand une machine ne répond pas bien, il s'agit de l'un des 4 goulots d'étranglement:
- le CPU
- la mémoire
- le disque
- le réseau
top/htop te permettent d'examiner la consommation CPU et mémoire.
iotop te permet de voir celle du disque.
pour le réseau, il y a nethogs.
Édition-2022-01-26T23:27, ah, on me glisse dans l'oreille que htop
, iotop
, et nethogs
nécessitent d'être installés au préalable ; ce n'est pas le cas (sur Ubuntu Mate 20.04) pour pkill
.
Wow ! Je découvre la commande last
:
last -F -a MonIdentifiant
Cela permet de voir la liste des N précédentes connexions, avec heures de démarrage et de fin. Un peu creepy !
si je veux chercher toto
uniquement dans des fichiers markdown
de manière récursive (en parcourant les sous-dossiers) à partir du répertoire courant, alors :
grep -ir "toto" --include \*.md ./
(attention à la combinaison de 2 options -i
pour ignorer la casse et -r
pour récursif)
complète ceci
Quelques options utiles :
-i
pour ignorer la casseC 3
ou-3
pour ajouter 3 lignes de contexte-r coucou .
pour chercher récursivement (dans les sous-dossiers) à partir du répertoire couranthello *
pour chercher dans l'ensemble des fichiers du répertoire courantpwet monfichier.ext
pour chercher le texte dansmonfichier
uniquement
Et un second livre sur des fondamentaux
ah bah c'est pas mal ça !
J'entends dans l'open space "ah mais tu peux pas installer WinMerge sur Linux". Ma réaction "utilise diff
", sauf que je me rend compte que je ne l'ai jamais vraiment utilisé.
Les 3 options à connaître :
diff un.txt deux.txt -c
pour ajouter du contexte. mais sur de gros fichiers, ce n'est pas forcément très lisible.diff un.txt deux.txt -u
pour un affichage unifié, à la suite (et avec du contexte), c'est à combiner avec l'ultime option :diff un.txt deux.txt --color
pour un rendu coloré
J'utilise souvent Meld mais là en mode rapide je vois que l'on a facilement moyen de s'en sortir !
Hop, je shaarlink un vieux truc sous Windows. Étant passé sous Linux récemment et après avoir galéré cherché 3 minutes, je me note ici la manière de liste les fichiers dans un répertoire, en les filtrant et de renvoyer cela vers un fichier afin de pouvoir l'ouvrir et manipuler facilement le texte :
ls | grep pdf > list
Oui, je sais, c'est du niveau 0 mais dans ma nooberie j'avais quand même mal combiné le |
et >
(à savoir ls > list | grep pdf
n'a pas donné le bon résultat).