Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#126 Le 05/03/2019, à 20:05

maxire

Re : discussion sur les pratiques des aidants

@naziel, en réponse à https://forum.ubuntu-fr.org/viewtopic.p … #p22062891?
Si c'est tout de même un peu gếnant car tu peux économiser un grep et rendre la commande plus compréhensible en faisant ;

bionic@k72f-J48-ubgnome:~$ echo; dpkg-query -l linux-generic* linux-headers* linux-image* linux-lowlatency* linux-modules* linux-signed* linux-tools* | grep -Ev "^rc|^un" ; echo ; echo "Noyau courant : $(uname -mr)"

dpkg-query: aucun paquet ne correspond à linux-generic*
dpkg-query: aucun paquet ne correspond à linux-lowlatency*
dpkg-query: aucun paquet ne correspond à linux-signed*
Souhait=inconnU/Installé/suppRimé/Purgé/H=à garder
| État=Non/Installé/fichier-Config/dépaqUeté/échec-conFig/H=semi-installé/W=attend-traitement-déclenchements
|/ Err?=(aucune)/besoin Réinstallation (État,Err: majuscule=mauvais)
||/ Nom                                    Version      Architecture Description
+++-======================================-============-============-===============================================================
ii  linux-image-4.15.0-43-generic          4.15.0-43.46 amd64        Signed kernel image generic
ii  linux-image-4.15.0-44-generic          4.15.0-44.47 amd64        Signed kernel image generic
ii  linux-image-4.15.0-45-generic          4.15.0-45.48 amd64        Signed kernel image generic
ii  linux-image-generic                    4.15.0.45.47 amd64        Generic Linux kernel image
ii  linux-modules-4.15.0-43-generic        4.15.0-43.46 amd64        Linux kernel extra modules for version 4.15.0 on 64 bit x86 SMP
ii  linux-modules-4.15.0-44-generic        4.15.0-44.47 amd64        Linux kernel extra modules for version 4.15.0 on 64 bit x86 SMP
ii  linux-modules-4.15.0-45-generic        4.15.0-45.48 amd64        Linux kernel extra modules for version 4.15.0 on 64 bit x86 SMP
ii  linux-modules-extra-4.15.0-44-generic  4.15.0-44.47 amd64        Linux kernel extra modules for version 4.15.0 on 64 bit x86 SMP
ii  linux-modules-extra-4.15.0-45-generic  4.15.0-45.48 amd64        Linux kernel extra modules for version 4.15.0 on 64 bit x86 SMP

Noyau courant : 4.15.0-45-generic x86_64
bionic@k72f-J48-ubgnome:~$

À noter que je ne vois pas trop l'intérêt du sort -k 3 et de la suppression de la 4ème colonne via awk, de plus dans le cas du traitement du cas«Partition  /boot pleine», s'intéresser aux paquets n'installant rien dans cette partiton comme linux-headers* ou linux-modules* (j'avoue ne pas savoir ce que font les paquets linux-tools*) me semble superflu.
Ces paquets sont supposés disparaître lors de la suppression du noyau correspondant ou lors d'une opération autoremove postérieure.


Maxire
Archlinux/Mate + Ubuntu 22.04 + Archlinux/Gnome sur poste de travail

Hors ligne

#127 Le 05/03/2019, à 20:14

diesel

Re : discussion sur les pratiques des aidants

diesel83140 a écrit :

Ça, je sais

mount | grep -Ei "emmc|hd|nvme|sd" | sed -E -e 's/type.*//' -e 's/.* on //'

Et comme tu n'utilises pas d'expressions régulières

mount | grep -Ei "emmc|hd|nvme|sd" | sed -e 's/type.*//' -e 's/.* on //'

marche aussi bien.

Amicalement.

Jean-Marie

On peut même faire mieux (même si j'ai mis un moment pour élaborer la bonne syntaxe)

mount | grep -Ei "emmc|hd|nvme|sd" | sed -E 's/(^.*on | type.*)//g'

La subtilité qui m'a bloquée pendant un bon moment est que, dans la mesure où, sur une ligne, il y a deux remplacements, il faut bien évidemment le "g" à la fin.

Amicalement.

Jean-Marie

Dernière modification par diesel (Le 05/03/2019, à 20:18)


Je déteste qu'on cherche à me faire passer pour un con, j'y arrive déjà très bien tout seul.
Le mort, il sait pas qu'il est mort ; c'est pour les autres que c'est dur.................... Pour les cons, c'est pareil.

En ligne

#128 Le 05/03/2019, à 20:31

nam1962

Re : discussion sur les pratiques des aidants

erresse a écrit :

(...)
Lorsque je donne une commande à exécuter au demandeur, jamais l'un d'eux ne me demande : Peux-tu m'expliquer ce que fait cette commande, comment fonctionne-t-elle et quelles infos fournit-elle ?
Je ne refuserais certes pas de fournir toutes les informations et même formations tout court (pour autant que je maîtrise moi-même le sujet), si les personnes me le demandaient, mais ce n'est simplement jamais arrivé...
(...)

Tu rigoles ? --> https://forum.ubuntu-fr.org/viewtopic.p … #p22059173


[ Modéré ]

Hors ligne

#129 Le 05/03/2019, à 20:48

Nuliel

Re : discussion sur les pratiques des aidants

J'avoue avoir un peu perdu le fil... du fil. Je ne réponds à aucun message en particulier mais je donne mon avis sur le tout en prenant un exemple.
sort -k 3  doit servir à trier selon les noyaux afin de voir si les noyaux sont entièrement installés
awk sert sûrement à éviter ce problème

naziel@naziel-HP-desktop:~$ echo; dpkg -l | grep -Ei "linux-(g|h|i|lo|mo|si|t)" | grep -v ^rc | sort -k3 | column -s" " -t

ii  binutils-x86-64-linux-gnu              2.30-21ubuntu1~18.04  amd64  GNU       binary   utilities,  for       x86-64-linux-gnu  target
ii  linux-headers-4.15.0-34                4.15.0-34.37          all    Header    files    related     to        Linux             kernel   version  4.15.0
ii  linux-headers-4.15.0-34-generic        4.15.0-34.37          amd64  Linux     kernel   headers     for       version           4.15.0   on       64         bit           x86       SMP
ii  linux-headers-4.15.0-44                4.15.0-44.47          all    Header    files    related     to        Linux             kernel   version  4.15.0
ii  linux-modules-4.15.0-44-generic        4.15.0-44.47          amd64  Linux     kernel   extra       modules   for               version  4.15.0   on         64            bit       x86  SMP
ii  linux-modules-extra-4.15.0-44-generic  4.15.0-44.47          amd64  Linux     kernel   extra       modules   for               version  4.15.0   on         64            bit       x86  SMP
ii  linux-headers-4.15.0-44-generic        4.15.0-44.47          amd64  Linux     kernel   headers     for       version           4.15.0   on       64         bit           x86       SMP
ii  linux-tools-4.15.0-44                  4.15.0-44.47          amd64  Linux     kernel   version     specific  tools             for      version  4.15.0-44
ii  linux-tools-4.15.0-44-generic          4.15.0-44.47          amd64  Linux     kernel   version     specific  tools             for      version  4.15.0-44
ii  linux-image-4.15.0-44-generic          4.15.0-44.47          amd64  Signed    kernel   image       generic
ii  linux-generic                          4.15.0.45.47          amd64  Complete  Generic  Linux       kernel    and               headers
ii  linux-signed-generic                   4.15.0.45.47          amd64  Complete  Signed   Generic     Linux     kernel            and      headers  (dummy     transitional  package)
ii  linux-headers-generic                  4.15.0.45.47          amd64  Generic   Linux    kernel      headers
ii  linux-image-generic                    4.15.0.45.47          amd64  Generic   Linux    kernel      image
ii  linux-tools-generic                    4.15.0.45.47          amd64  Generic   Linux    kernel      tools
ii  linux-headers-4.15.0-45                4.15.0-45.48          all    Header    files    related     to        Linux             kernel   version  4.15.0
ii  linux-tools-common                     4.15.0-45.48          all    Linux     kernel   version     specific  tools             for      version  4.15.0
ii  linux-modules-4.15.0-45-generic        4.15.0-45.48          amd64  Linux     kernel   extra       modules   for               version  4.15.0   on         64            bit       x86  SMP
ii  linux-modules-extra-4.15.0-45-generic  4.15.0-45.48          amd64  Linux     kernel   extra       modules   for               version  4.15.0   on         64            bit       x86  SMP
ii  linux-headers-4.15.0-45-generic        4.15.0-45.48          amd64  Linux     kernel   headers     for       version           4.15.0   on       64         bit           x86       SMP
ii  linux-tools-4.15.0-45                  4.15.0-45.48          amd64  Linux     kernel   version     specific  tools             for      version  4.15.0-45
ii  linux-tools-4.15.0-45-generic          4.15.0-45.48          amd64  Linux     kernel   version     specific  tools             for      version  4.15.0-45
ii  linux-image-4.15.0-45-generic          4.15.0-45.48          amd64  Signed    kernel   image       generic
naziel@naziel-HP-desktop:~$

Hors ligne

#130 Le 05/03/2019, à 21:13

diesel

Re : discussion sur les pratiques des aidants

C'est pas pour moi.

Il s'agissait d'un aparté sur la simplification d'un enchaînement de commandes sed.

Amicalement.

Jean-Marie

Dernière modification par diesel (Le 05/03/2019, à 21:14)


Je déteste qu'on cherche à me faire passer pour un con, j'y arrive déjà très bien tout seul.
Le mort, il sait pas qu'il est mort ; c'est pour les autres que c'est dur.................... Pour les cons, c'est pareil.

En ligne

#131 Le 05/03/2019, à 21:20

Watael

Re : discussion sur les pratiques des aidants

mount | grep -Ei "emmc|hd|nvme|sd" | sed -E 's/(^.*on | type.*)//g'

grrr !!!

mount | sed -rE '/emmc|hd|nvme|sd/Is/(^.*on | type.*)//g'

Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#132 Le 05/03/2019, à 22:12

moko138

Re : discussion sur les pratiques des aidants

Ben non :

mount | sed -rE '/emmc|hd|nvme|sd/Is/(^.*on | type.*)//g'
Utilisation: sed [OPTION]... {script-seulement-si-pas-d'autre-script}
[fichier-d'entrée]...

  -n, --quiet, --silent
                 supprimer l'écriture automatique de l'espace des motifs
(...)
Si aucune option -e, --expression, -f ou --file n'est donnée, le
premier argument qui n'est pas une option sera pris comme étant le script
sed à interpréter. Tous les arguments restants sont les noms des fichiers
d'entrée; si aucun fichier d'entrée n'est spécifiée, l'entrée standard
est lue.

Et, enchâssé dans
ls -lat $(              ) | head
ça donne, au mieux, le home.


Alors que

mount | sed -e '/^\//!d' -e 's/type.*//' -e 's/.* on //'

et

ls -lat $(mount | tail -1 | sed -e '/^\//!d' -e 's/type.*//' -e 's/.* on //') | head

Variante :

mount | grep -Ei "emmc|hd|nvme|sd" | sed -E 's/(^.*on | type.*)//g'

et

ls -lat $(mount | tail -1 | grep -Ei "emmc|hd|nvme|sd" | sed -E 's/(^.*on | type.*)//g') | head

font parfaitement le boulot espéré.


%NOINDEX%
Un utilitaire précieux : ncdu
Photo, mini-tutoriel :  À la découverte de dcraw

Hors ligne

#133 Le 05/03/2019, à 22:34

Watael

Re : discussion sur les pratiques des aidants

oops.
il y a des trucs qui ne sont pas passés à la recopie, ou j'ai édité sans valider les modifs...
il fallait lire :

mount | sed -rn '/emmc|hd|nvme|sd/Is/(^.*on | type.*)//gp'

d'ailleurs, -r et -E sont la même option : -E, -r, --regexp-extended

les voitures, ça déplace des gens, mais c'est dégueulasse.
le nucléaire, ça éclaire les gens, mais c'est dégueulasse.
« ça fait le boulot », mais c'est dégueulasse.

Dernière modification par Watael (Le 05/03/2019, à 22:39)


Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#134 Le 06/03/2019, à 08:51

diesel

Re : discussion sur les pratiques des aidants

On s'éloigne un peu du sujet, quoi que...

Votre débat pointe une différence de philosophie entre vous deux.

L'un prône la concision (le minimum de commandes), l'autre la simplicité de chaque commande prise individuellement.

A titre personnel, je préfère la deuxième façon de faire qui est tout à fait dans la ligne de l'approche KISS d'UNIX (et je ne vois pas trop ce qu'elle a de "dégueulasse").

Une fois qu'on a compris le principe du pipe (le résultat de la commande précédente passé en entrée de la commande suivante. Même un débutant est capable de le comprendre), il est très facile de suivre la logique du traitement.

Alors que, comprendre instantanément "/emmc|hd|nvme|sd/Is/(^.*on | type.*)//gp", moi, je n'y arrive pas (il me faut au moins un petit tour dans le man de sed ou regex pour comprendre).

Amicalement.

Jean-Marie

Dernière modification par diesel (Le 06/03/2019, à 08:58)


Je déteste qu'on cherche à me faire passer pour un con, j'y arrive déjà très bien tout seul.
Le mort, il sait pas qu'il est mort ; c'est pour les autres que c'est dur.................... Pour les cons, c'est pareil.

En ligne

#135 Le 06/03/2019, à 09:16

Qid

Re : discussion sur les pratiques des aidants

Merci Jean Marie... La facilité de lecture pour se rendre accessible/compréhensible c'est quand-même pas mal... Je redis ce que quelqu'un a déjà dit ici mais que j'entends perso aussi IRL : avec des commandes certes qui font ce qu'on veut mais qui sont incompréhensible facilement Linux restera pour la majeur partie des gens un système pour les élites développeur... Alors que c'est tout autant si ce n'est plus un système grand public que les 2 autres grand gourou du secteur...


"GNU/Linux c'est que du bon mais M$ Windows ce n'est pas si mal"
Référent technique Ubuntu d'un Groupe d'Utilisateur du Libre
plus d'info sur mon profil

Hors ligne

#136 Le 06/03/2019, à 09:46

bruno

Re : discussion sur les pratiques des aidants

D'accord avec diesel83140 et Qid.
Il vaut mieux éviter de proposer des commandes complexes en première intention et les réserver aux cas les plus difficiles après un minimum d'investigation à l'aide de questions et commandes simples.
D'autant que ces commandes avec quantités de filtres à coup d'expressions régulières peuvent vite montrer leur limites :

$ mount | sed -rn '/emmc|hd|nvme|sd/Is/(^.*on | type.*)//gp'
/
/sys/fs/cgroup/unified
/home

Autre exemple où en plus on ne voit pas / :

# mount | sed -rn '/emmc|hd|nvme|sd/Is/(^.*on | type.*)//gp'
/sys/fs/cgroup/unified
/proc/fs/nfsd
/srv

#137 Le 06/03/2019, à 09:55

Watael

Re : discussion sur les pratiques des aidants

quand le médecin me fait une ordonnance de deux pages, j'ai l'impression que j'ai quelque chose de grave.


Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#138 Le 06/03/2019, à 10:02

diesel

Re : discussion sur les pratiques des aidants

Watael a écrit :

quand le médecin me fait une ordonnance de deux pages, j'ai l'impression que j'ai quelque chose de grave.

Je suis aussi d'accord avec toi sur ce point (voir le début du sujet).

Cependant, pour reprendre ton analogie du médecin ; quand il emploie des mots plus compliqué que "bobo" ou "rhume", j'ai aussi l'impression d'avoir quelque chose de grave.

Amicalement.

Jean-Marie


Je déteste qu'on cherche à me faire passer pour un con, j'y arrive déjà très bien tout seul.
Le mort, il sait pas qu'il est mort ; c'est pour les autres que c'est dur.................... Pour les cons, c'est pareil.

En ligne

#139 Le 06/03/2019, à 10:41

nam1962

Re : discussion sur les pratiques des aidants

diesel83140 a écrit :

(...)

Cependant, pour reprendre ton analogie du médecin ; quand il emploie des mots plus compliqué que "bobo" ou "rhume", j'ai aussi l'impression d'avoir quelque chose de grave.
(...)

Il est clair que si il te sort : "vous avez une lésion traumatique superficielle de type bénin et un catarrhe de l'arbre respiratoire supérieur d'origine virale associé à un coryza aigu", tu vas direct modifier ton testament chez ton notaire !

Dernière modification par nam1962 (Le 06/03/2019, à 10:50)


[ Modéré ]

Hors ligne

#140 Le 06/03/2019, à 10:44

rogn...

Re : discussion sur les pratiques des aidants

Je vous propose d'ici la fin de la semaine que je publie un git pour regrouper toutes vos commandes. L'objectif sera d'avoir un .bashrc avec les aliases standard et formalisé à tout le monde. À voir aussi de l'intégrer à la doc.

#141 Le 06/03/2019, à 10:53

nam1962

Re : discussion sur les pratiques des aidants

Voici celle que j'utilise comme base de diagnostic et pour finaliser une réparation : [url][modéré : pas d’auto-pub, merci]-depannage-linux-base/[/url]


[ Modéré ]

Hors ligne

#142 Le 06/03/2019, à 13:29

rogn...

Re : discussion sur les pratiques des aidants

rogn... a écrit :

Je vous propose d'ici la fin de la semaine que je publie un git pour regrouper toutes vos commandes. L'objectif sera d'avoir un .bashrc avec les aliases standard et formalisé à tout le monde. À voir aussi de l'intégrer à la doc.

J'ai un peu de temps en ce moment du coup, pour ceux qui veulent se faire plaisir avec git, voir ce projet.
https://github.com/officialrogn/BACHE_RC
Merci de votre participation smile

#143 Le 06/03/2019, à 14:16

diesel

Re : discussion sur les pratiques des aidants

rogn... a écrit :
rogn... a écrit :

Je vous propose d'ici la fin de la semaine que je publie un git pour regrouper toutes vos commandes. L'objectif sera d'avoir un .bashrc avec les aliases standard et formalisé à tout le monde. À voir aussi de l'intégrer à la doc.

J'ai un peu de temps en ce moment du coup, pour ceux qui veulent se faire plaisir avec git, voir ce projet.
https://github.com/officialrogn/BACHE_RC
Merci de votre participation smile

Excuse-moi Rogn, mais je ne comprends pas bien le rapport avec ce fil de discussion.

Amicalement.

Jean-Marie


Je déteste qu'on cherche à me faire passer pour un con, j'y arrive déjà très bien tout seul.
Le mort, il sait pas qu'il est mort ; c'est pour les autres que c'est dur.................... Pour les cons, c'est pareil.

En ligne

#144 Le 06/03/2019, à 14:26

rogn...

Re : discussion sur les pratiques des aidants

J'ai lancé l'idée .
Mais il faut croire que je ne l'ai pas dit au bon moment quand vous étiez en train de débattre de sed, awk et grep...
Du coup quitte à avoir des commandes complexes mais réutilisées partout, autant les reporter sur le .bashrc. Ce sera plus digeste pour tout le monde. En tout cas, j'en ai aussi besoin.

#145 Le 06/03/2019, à 14:50

diesel

Re : discussion sur les pratiques des aidants

Oui, ça j'avais vu.

Mais je ne comprends toujours pas ce que tu veux faire (le rapport entre le .bashrc et une "bibliothèque" de commandes). Je dois être trop con. wink smile

Amicalement.

Jean-Marie

Dernière modification par diesel (Le 06/03/2019, à 14:50)


Je déteste qu'on cherche à me faire passer pour un con, j'y arrive déjà très bien tout seul.
Le mort, il sait pas qu'il est mort ; c'est pour les autres que c'est dur.................... Pour les cons, c'est pareil.

En ligne

#146 Le 06/03/2019, à 14:53

rogn...

Re : discussion sur les pratiques des aidants

Ben... associer les looooongues commandes  à des aliases.

#147 Le 06/03/2019, à 16:08

moko138

Re : discussion sur les pratiques des aidants

diesel83140 a écrit :

Oui, ça j'avais vu.

Mais je ne comprends toujours pas ce que tu veux faire (le rapport entre le .bashrc et une "bibliothèque" de commandes).

+1

  Si je comprends bien, ça suppose que tous les demandeurs et tous les aidants adoptent ces .bashrc et .bash_aliases modifiés ???

  Je viens de modifier pour la 36ème fois la "looooongue" mais unique ligne de diagnostic de "Ma clef (ou autre support amovible) ne monte pas ou mal".  Alors tous les membres du forum devraient adapter en conséquence leurs .bash_aliases ???

  Pas possible ; il y a quelque-chose qui m'échappe.


%NOINDEX%
Un utilitaire précieux : ncdu
Photo, mini-tutoriel :  À la découverte de dcraw

Hors ligne

#148 Le 06/03/2019, à 16:19

rogn...

Re : discussion sur les pratiques des aidants

moko138 a écrit :

Si je comprends bien, ça suppose que tous les demandeurs et tous les aidants adoptent ces .bashrc et .bash_aliases modifiés ???

Dans l'idéal oui.
Mais le but du .bash_aliases voire d'un second fichier  de bash_aliases est de se caler une bonne fois pour toutes pour notre forum un dictionnaire de commandes, sans écraser le .bashrc ou le .bash_alias existant.
La moitié de vos commandes ici m'est incompréhensible d'où pourquoi je fais un dictionnaire.
Le demandeur au lieu de se poser des tas de questions, il verra dans ton cas une commande simple.
L'aidant ne se posera pas non plus de questions si sa commande hypercomplexe mais efficace est bien écrite.

moko138 a écrit :

Je viens de modifier pour la 36ème fois la "looooongue" mais unique ligne de diagnostic de "Ma clef (ou autre support amovible) ne monte pas ou mal".

Le problème est qu'avec cette 36eme modification, on ne distingue aucune trace.

Enfin, je vous vois venir avec vos modifications sur ce topic, il y en aura 2000 et vous serez paumés. D'où pourquoi je veux (que vous) tracer (tracez) dans le GIT ce que vous proposez,.

#149 Le 06/03/2019, à 17:26

Watael

Re : discussion sur les pratiques des aidants

mdr :

watael ~ $ > kinepaAroot
watael ~ $ ls -laR | grep root
-rw-r--r--  1 watael watael     3363  6 mars  17:22 kinepaAroot
watael ~ $ find -user root
watael ~ $
watael ~ $ rm kinepaAroot

edit: modification du nom de fichier pour mettre en évidence qu'il n'est pas à root.

Dernière modification par Watael (Le 07/03/2019, à 08:27)


Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#150 Le 06/03/2019, à 18:54

rogn...

Re : discussion sur les pratiques des aidants

Dans la série j'ai un fichier hosts custo pour éviter que mon PC aille titiller les pubs et autre domaines malveillants.

Un script pour basculer vers le fichier hosts custo à condition qu'il existe sur le système

echo "Script is removing $(grep '127.0.0.1' /etc/hosts | wc -l) entries"; sudo rm /etc/hosts && sudo cp /etc/hosts.new /etc/hosts; echo "hosts has now $(grep '127.0.0.1' /etc/hosts | wc -l) entries"; echo "End of switch";

Un autre pour réinitialiser

echo "Script is removing $(grep '127.0.0.1' /etc/hosts | wc -l) entries" ; sudo rm /etc/hosts && sudo cp /etc/hosts.orig /etc/hosts; echo "hosts has now $(grep '127.0.0.1' /etc/hosts | wc -l) entries"; echo "End of switch"