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.

#1 Le 18/01/2020, à 14:29

sylvain3800

Tuto : les Informations utiles à donner lorsque j'ai un probleme.

Salut,

Tu viens de débarquer sur la banquise, tu débutes avec Linux et tu as besoin d'aide avec ton imprimante et/ou ton scanner .
C'est pas facile, t'es perdu, tu ne sais pas où chercher les informations et les tutos que tu trouves sont trop compliqués à suivre ... pas glop pas glop !

/!\ Merci de bien séparer chaque retour de commande,

comme
ceci.

Heureusement la communauté des barbus va t'aider et trouver la solution à ton problème

Mais pour cela ,tu va devoir créer un nouveau sujet pour demander de l'aide pour ton imprimante spécifique .

et si tu suis ce petit tuto pour créer ton message, tu va te faire gagner un temps énorme par la suite ! car grâce à ce petit tuto tu va donner toutes les infos utiles sur ton système, ton imprimante/scanner et ton problème.
du coup les anciens de la banquise, les barbus vont pouvoir voir tout de suite où se situe ton problème et ils vont donc pouvoir te guider pas à pas vers la solution.

J'ai essayé de faire ce tuto clair pour que les néophytes puissent le suivre pas à pas, je l'ai séparé en 4 parties
la partie compliquée c'est la partie 3. C'est là où, il va falloir y passer, il te faudra utiliser le terminal pour récupérer les infos qu'il faudra nous redonner par la suite dans une forme "lisible" qui sied à la modération .

pour ce faire, il faudra utiliser un retour utilisable de commande :

    • Cliquer sur  le lien « Modifier » en bas à droite du message
    • Sélectionner le texte
    • Cliquer sur le <> de l'éditeur de message

1482181232.jpg

comme indiqué dans le : Retour utilisable de commande

Bon, te voilà prévenu/e et fin prêt/e à te jeter a l'eau donc je commence le tuto 

I ] Le Titre du message

Cela parait bête, mais si dans le titre la marque et le modèle de l'imprimante pouvait être écrit cela serait déjà super utile pour les aidants, qui peuvent déjà se faire une première idée des pilotes qu'il te faut et de la procédure qu'il te faudra suivre pour les installer au besoin.
Bon la plupart du temps ces infos sont données ... mais des fois ... non ... c'est pour cela je précise.

II ] le corps du message 

En premier lieu : les salutations de base et un petit résumé du problème,
là c'est pas compliqué, dis nous ce qui marche pas : l'impression, le scanner, peut être les 2 si tu as une multifonction

et voilà la plupart des gens s’arrêtent ici et ça marche pas trop mal :
Un intervenant va venir et puis généralement il te demandera de rentrer une série de commandes dans un terminal afin de se faire une idée plus précise de ton problème et avec ces infos qu'il aura nouvellement glanées au fil des échanges, il pourra commencer a cerner le problème et proposer une solution.... ça marche bien mais c'est pas optimal !

Mais bon toi qui lit ce tuto, tu va gagner du temps ! :
tu va donner toutes les infos dont les aidants ont besoin et même celles dont il n'auront peut être pas besoin directement dans ton premier message !
Ainsi, les aidants cerneront ton problème directement et pourront te proposer  une solution clefs en main . big_smile
c'est super non ?

Donc comme tu lis ce tuto ,et que tu veux gagner du temps, dans ton message tu va rajouter à la fin  un petit chapitre " les infos utiles" c'est la fameuse partie difficile du tuto

III ] les infos utiles 

Bon là je ne te le cache pas, on va rentrer dans le dur ,et c'est là qu'il va falloir sortir le terminal
c'est peut être compliqué/ impressionnant pour toi  ... mais il va falloir y passer a un moment ou un autre car les infos donnés par le terminal sont précise et utiles pour les aidants.

Et puis rappelle toi de cette règle simple : plus tu donnes des infos, plus vite on comprendra où se situe le problème .
donc faut pas hésiter.

Et puis c'est pas compliqué en fait tu va copier/coller les commandes que je vais te donner dans un terminal et le terminal va te donner une réponse.
il te suffira  de copier coller l'ensemble ces questions/réponses du terminal dans ton message d'aide en utilisant des balises codes <> , tu sais le fameux retour utilisable de commande 

Allez c'est parti :

La première chose a faire : ouvre un terminal, assure toi que ton imprimante/scanner est bien reliée à ton pc et qu'elle est allumée.
Çà y es, tu es fin prêt/e à nous abreuver d'infos !
donc sans plus attendre :

A ] les infos sur ton système qu'il faudrait donner quelque soit le problème

c'est important donc copie/colle le retour de cette commande :

cat /etc/lsb-release && uname -ir && groups && lsusb

avec cela, on saura pas mal de chose concernant ton système et son architecture, c'est utile pour proposer des pilotes

B ] les infos a donner si ton problème est un problème d'impression/imprimante

si ton problème c'est pas un problème d'impression mais un problème de scanner : bravo tu va pouvoir faire sauter toute cette partie rends toi en C]
Bon, si c'est l'impression qui déconne alors j'ai fais 2 parties, (B1 et B2) la partie la plus importante c'est B1 il faudra choisir la commande B1 correspondante à ton Imprimante si tu donnes juste cette commande, tu auras déjà fait beaucoup pour accélérer la localisation de ton problème .   
les commandes données en B2 sont aussi très utiles, elles permettent de chercher en profondeur si le problème ne se situe pas en B1

Allez courage tu va y arriver.

B.1) les infos à donner spécifiques à la marque de ton imprimante

ces infos sont primordiales car elles nous permettent de savoir si les pilotes de ton imprimante sont installés sur ton système (90 % des problèmes viennent de là) il te faut choisir la commande correspondant à la marque de ton imprimante

si tu as une EPSON :

dpkg -l | grep epson

si tu as une CANON

dpkg -l | grep cnijfilter
dpkg -l | grep cndrvcups

si tu as une BROTHER

dpkg -l | grep -i brother


si tu as une HP:

 dpkg -l | grep hplip
hp-check

si tu as une SAMSUNG

dpkg -l | grep suld

pour le pilote et afin de savoir si le depot est installé

find /etc/apt -name '*.list' -exec bash -c 'echo -e "\n$1\n"; nl -ba "$1"' _ '{}' \;

si tu as une TOSHIBA :

dpkg -l | grep toshiba

(Edit - suite aux messages #36 & #37)

B.2 )Les infos à donner quelle que soit la marque de l'imprimante 

il suffit de copier/coller ces commandes :

dpkg -l | grep cups
lpstat -t
/usr/sbin/lpinfo -v
sudo grep -v "Bad driver information file" /var/log/cups/error_log
dpkg -l | grep -v ^ii

et voilà avec tout ceci ton problème sera clairement identifié et la solution clef en main pourra t'être proposée rapidement.

C ] les infos a donner si ton problème est un problème de scanner .

Bon des fois c'est le scanner qui ne veut pas numériser, alors dans ce cas là, c'est ces commandes qui sont intéressantes pour les aidants,
quelle que soit la marque du scanner 

dpkg -l | grep sane
sudo sane-find-scanner -q
scanimage -L
ls /etc/sane.d/
cat /etc/sane.d/dll.conf
ls  /lib/udev/rules.d | grep libsane

et voilà avec ça les barbus trouveront où se situe le problème ou du moins pourront éliminer de nombreuses pistes de recherche

IV ] résumé 

Le tuto a l'air compliqué comme cela mais c'est parce que je veux qu'il soit utile quel que soit le problème et quelle que soit la marque de l’imprimante /scanner donc je suis obligé de m'étaler un peu ....
mais c'est pas si compliqué pour faire une bonne demande d'aide :
il te faut
1) un titre avec une marque et un modèle
2) expliquer si c'est un problème d'impression ou de scanner
3) donner les infos utiles pour gagner du temps en donnant :
le retour de la commande donné en A
+ en fonction de ton cas :
si tu veux imprimer la commande correspondant à ta marque B1 + les commandes  B2
ou
si tu veux scanner les commandes données dans C

c'est tout ! et en suivant ce tuto que j'ai essayé de faire le plus clair possible, tu va gagner un temps précieux.
@++

Edit : on rajoute la proposition d'eric63 dans le dernier post de ce jour
"dans la résolution de problème de scan qui ne fonctionne pas :
pourrais tu ajouter les commandes 

dpkg -l | grep -i libusb

pour voir les libs installées (il doit y avoir au moins 2 libusb-0.1-4) même si la machine n'a installé que des paquets 64bits
et

sudo apt install libusb-0.1-4:i386

  pour l‘installer la lib qui semble décoincer les scanner Brother puis de faire un reboot ordi et imprimante.

Dernière modification par xubu1957 (Le 09/03/2026, à 20:53)


Cogito ergo sum = je consome donc je suis : je pense, donc je suis !

IN-SHADOW:https://www.youtube.com/watch?v=j800SVeiS5I

Hors ligne

#2 Le 18/01/2020, à 14:31

sylvain3800

Re : Tuto : les Informations utiles à donner lorsque j'ai un probleme.

Voilá si des aidants voient des erreurs, des oublis  ont des remarques... ben qu'ils hésitent pas  je modifierais le message initial en fonction des remarques


Cogito ergo sum = je consome donc je suis : je pense, donc je suis !

IN-SHADOW:https://www.youtube.com/watch?v=j800SVeiS5I

Hors ligne

#3 Le 25/01/2020, à 14:02

sylvain3800

Re : Tuto : les Informations utiles à donner lorsque j'ai un probleme.

Merci pour l’épingle smile

légère modification : rajout de la commande hp-check  pour les possesseurs d' imprimantes HP

===========

Nota de la modération (19/02/2026) - la commande :

cat /var/log/cups/error_log

est remplacée par :

sudo grep -v "Bad driver information file" /var/log/cups/error_log

pour éviter des retours kilométriques

Dernière modification par xubu1957 (Le 19/02/2026, à 18:33)


Cogito ergo sum = je consome donc je suis : je pense, donc je suis !

IN-SHADOW:https://www.youtube.com/watch?v=j800SVeiS5I

Hors ligne

#4 Le 14/02/2020, à 11:21

xubu1957

Re : Tuto : les Informations utiles à donner lorsque j'ai un probleme.

Pour la version 20.04 :

Le 20/11/2020, ar barzh paour a écrit :

dans le commentaire #7 bugs.launchpad.net/ubuntu/+source/ippusbxd/+bug/1871011, on lit :

Veuillez désinstaller ippusbxd. Ensuite, votre appareil devrait fonctionner normalement avec HPLIP. ippusbxd était censé permettre l'impression et la numérisation sans pilote sans HPLIP. Malheureusement, il y a eu des problèmes dans sa conception. Dans Groovy, nous remplacerons ippusbxd par ipp-usb qui permet enfin à l'impression et à la numérisation sans pilote sans HPLIP de fonctionner de manière fiable.

La Doc HPLIP (§ 10.1) > hplip#erreur_d_impression_via_usb_ubuntu_20.04.1

Ou des cas résolus > [Résolu] Imprimante HP ENvy 4502 sous 20.04

Le 11/10/2020, ylag a écrit :

Bonjour,

(...)
Si ça ne fonctionne pas, peut-être tenter la suppression du paquet ippusbxd qui semble poser problème pour les imprimantes usb sur la 20.04

sudo apt purge ippusbxd

...redémarrer et encore tenter de réinstaller l'imprimante?

Si ça ne fonctionne toujours pas, simplement réinstaller le paquet pour revenir à l'état initial:

sudo apt install ippusbxd

A+

dans > [RÉSOLU]Imprimante Canon et Ubuntu 20.04

* * * * * * * *

/!\ Aucune demande d’aide ne sera traitée dans ce fil, créez votre propre fil pour demander de l’aide. /!\

* * * * * * * *

En complément du message #1, une méthode détaillée pour fournir les renseignements :

cqfd93 a écrit :

Bonjour,

Entrer des commandes dans un terminal et donner le résultat - Voilà la marche à suivre :

  1. Ouvre le terminal avec ctrl-alt-t

  2. Sélectionne la commande voulue avec un triple clic (ça sélectionne toute la ligne, même la fin si on ne la voit pas)

  3. Colle-la dans le terminal avec un clic molette, valide avec Entrée

  4. Sélectionne et copie tout ce que te dit le terminal depuis la commande jusqu'à la dernière ligne incluse

  5. Clique sur le <> de l'éditeur de message

    Balisesmoko138.jpg

  6. Colle là où se trouve le curseur (entre le ] et le [)

  7. Refais toutes les étapes depuis la 2 pour les autres commandes.

===========

E [25/Jun/2024:09:44:04 +0200] Unknown directive JobPrivateAccess on line 89 of /etc/cups/cupsd.conf.
E [25/Jun/2024:09:44:04 +0200] Unknown directive JobPrivateValues on line 90 of /etc/cups/cupsd.conf.
E [25/Jun/2024:09:44:04 +0200] Unknown directive SubscriptionPrivateAccess on line 91 of /etc/cups/cupsd.conf.
E [25/Jun/2024:09:44:04 +0200] Unknown directive SubscriptionPrivateValues on line 92 of /etc/cups/cupsd.conf.

Pour ce contexte, il y a des commandes proposées par ylag, initialement, dans ce fil

Le 11/10/2020, ylag a écrit :

Bonjour,
(...)

Pour ce genre d'erreurs, peut-être réinitialiser le fichier /etc/cups/cupsd.conf à ses valeurs par défaut en recopiant le contenu de /usr/share/cups/cupsd.conf.default dans /etc/cups/cupsd.conf:

sudo cp /usr/share/cups/cupsd.conf.default /etc/cups/cupsd.conf

...redémarrer ensuite le service cups:

sudo systemctl restart cups.service

...puis tenter de réinstaller l'imprimante ?(...)

* * * * * * * *

> wiki.ubuntu.com/DebuggingPrintingProblems

* * * * * * * *


Archivage : Dans > forum.ubuntuusers.de/topic/mx925-druckt-nicht

ls -l /usr/share/ppd
ls -l /etc/cups/ppd/*
cat /etc/printcap
lpinfo -l -v
lpc status
cupsctl
sudo less /etc/cups/printers.conf

* * * * * * * *

SANE_DEBUG_DLL=5 scanimage -L

piqué dans Fix for USB scanner not working on LM20 that worked on LM19 (Edit 31/10/10/2022)

* * * * * * * *

Pour Canon :

Le 09/04/2021, L'Africain a écrit :

Je ne le redirai jamais assez, il faut utiliser le ppa canon: https://doc.ubuntu-fr.org/tutoriel/ppa_canon

> canon mg 3650S scangearmp2 ne fonctionne pas

Dans > le-libriste.fr/gestion-des-imprimantes-canon-sous-ubuntu

Il est indiqué un ppa à rajouter : robbiew/cups-bjnp (Pour une connexion en réseau).

_ _ _


Le 02/07/2021, ylag a écrit :

Le pilote libre Gutenprint devrait supporter le modèle Canon PIXMA iP3600 si on se fie à cette liste :

http://gimp-print.sourceforge.net/p_Sup … inters.php

Ce n'est plus installé de base sur la 20.04, il faut le paquet printer-driver-gutenprint pour l'avoir :

sudo apt install printer-driver-gutenprint

A+

* * * * * * * *

Pour les scanners Epson :

La Doc > scanner Epson - § 2.1  à  partir d'Ubuntu 18.04

Et ce message

Fournir le retour de :

ls -l /etc/udev/rules.d/ | grep -i epson 
Le 09/10/2019, ylag a écrit :

Salut,

...

Sinon, la commande suivante devrait créer correctement le fichier:

echo '# chmod device EPSON group\nATTRS{manufacturer}=="EPSON", DRIVERS=="usb", SUBSYSTEMS=="usb", ATTRS{idVendor}=="04b8", ATTRS{idProduct}=="113d", MODE="0777"' | sudo tee /etc/udev/rules.d/79-udev-epson.rules

...remarquez que le contenu précédent du fichier sera écrasé.

A+

> Résolue - Pb installation scanner Imprimante multifonction EPSON XP255

* * * * * * * *

Job stopped due to filter errors; please consult the /var/log/cups/error_log file for details.
Traducteur Deepl a écrit :

Le travail s'est arrêté en raison d'erreurs de filtrage ; veuillez consulter le fichier /var/log/cups/error_log pour plus de détails.

Fournir :

Le 10/03/2017, Nuliel a écrit :

Ok, je n'y connais pas grand chose mais peux tu poster le retour de

cat /var/log/cups/error_log
cat /var/log/cups/access_log

(...)

repris dans > [RESOLU] imprimante disparue !!!

Une Doc > How to Use the Internet Printing Protocol

Dernière modification par xubu1957 (Le 09/03/2026, à 20:47)


Conseils pour les nouveaux demandeurs et pas qu'eux
Important : Pensez à passer vos sujets en [ Résolu ] lorsque ceux-ci le sont, au début du titre en cliquant sur Modifier sous le premier message, et un bref récapitulatif de la solution à la fin de celui-ci. Merci.                   Membre de Linux-Azur

Hors ligne

#5 Le 14/02/2020, à 12:05

FrancisFDZ

Re : Tuto : les Informations utiles à donner lorsque j'ai un probleme.

@sylvain3800 : D'après le titre de ce fil, les informations de ce tuto ne devraient pas se limiter aux imprimantes / scanners, bien que ce soit un problème récurrent ; il serait peut-être bon de rectifier le titre pour en tenir compte. Pour un débutant qui aurait un problème de wifi (autre sujet récurrent) les conseils prodigués ici n'ont guère d'intérêt.


-- On peut avoir des raisons de se plaindre et n'avoir pas raison de se plaindre --
[Victor Hugo]

Hors ligne

#6 Le 06/03/2020, à 07:04

moko138

Re : Tuto : les Informations utiles à donner lorsque j'ai un probleme.

Quand nous lisons le retour de sudo sane-find-scanner -q, gardons à l'esprit que parfois le retour contient des informations parasites :

  - une carte wifi :
Et de fait, une carte wifi contient bien un scanner de réseau. (*)

moko@pc:~$ sudo sane-find-scanner -q
found USB scanner (vendor=0x04b8 [EPSON], product=0x011f [EPSON Scanner]) at libusb:001:010
found USB scanner (vendor=0x148f [Ralink], product=0x3070 [802.11 n WLAN]) at libusb:001:004

  - un lecteur d'empreinte digitale.
Exemple en ./viewtopic.php?pid=22231024#p22231024 qui indique :

sudo sane-find-scanner -q ; echo; lsusb | sort ; (...)
found USB scanner (vendor=0x138a, product=0x0017) at libusb:003:003
(...)
Bus 003 Device 003: ID 138a:0017 Validity Sensors, Inc. Fingerprint Reader

Donc un coup d'oeil parallèle sur le retour de lsub est bienvenu !  smile

Le retour de scanimage -L serait-il plus fiable ?


___
(*) Quant à savoir pourquoi ces informations parasites n'apparaissent pas toujours, je donne ma langue au chat.


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

Hors ligne

#7 Le 06/03/2020, à 07:18

moko138

Re : Tuto : les Informations utiles à donner lorsque j'ai un probleme.

Dans le #1, §C), on lit :

sane-find-scanner
sudo sane-find-scanner

  Puis-je suggérer de remplacer ces deux commandes par celle-ci :

sudo sane-find-scanner -q

?

Ce serait aussi efficace, tout en allégeant les retours de 35 lignes inutiles.  smile
Merci !


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

Hors ligne

#8 Le 06/03/2020, à 09:35

eric63

Re : Tuto : les Informations utiles à donner lorsque j'ai un probleme.

salut
très bien ce tuto et agréable à lire
bon moi j’y vois des petites fautes de frappe et pas de fautes de petites frappes big_smile
ça me pique un peu les yeux
dans le chapitre 3 B et C
C ] les infos a donner …
C ] les infos à donner …

C ] c'est le scanner qui veux pas scanner a lors dans ce cas là , c'est ces commandes qui sont intéressante pour les aidants
C ] c'est le scanner qui veut pas scanner alors dans ce cas là , c'est ces commandes qui sont intéressantes pour les aidants

Dernière modification par eric63 (Le 06/03/2020, à 09:44)


Kubuntu 25.10 wayland  KDE Plasma 6.5.6 Qt 6.9.2 noyau 6.17.0-19 Framework 6.20
Asus B760+D4 i5-12400F 4.4Ghz DDR4 32Go nvidia RTX 3060 12GB
Utilisez les drivers libres avant d’ installer une brother avec le script demonipuch
J’utilise le clavier azerty AFNOR

Hors ligne

#9 Le 06/03/2020, à 09:46

FrancisFDZ

Re : Tuto : les Informations utiles à donner lorsque j'ai un probleme.

eric63 a écrit :

salut
très bien ce tuto et agréable à lire
bon moi j’y vois des petites fautes de frappe et pas de fautes de petites frappes big_smile
ça me pique un peu les yeux
dans le chapitre 3 B et C
C ] les infos a donner …
C ] les infos à donner …

C ] c'est le scanner qui veux pas scanner a lors dans ce cas là , c'est ces commandes qui sont intéressante pour les aidants
C ] c'est le scanner qui veut pas scanner alors dans ce cas là , c'est ces commandes qui sont intéressantes pour les aidants

Effectivement, une faute d'accent peut être considérée comme bénigne, mais aussi changer le sens de la phrase


-- On peut avoir des raisons de se plaindre et n'avoir pas raison de se plaindre --
[Victor Hugo]

Hors ligne

#10 Le 06/03/2020, à 10:08

ar barzh paour

Re : Tuto : les Informations utiles à donner lorsque j'ai un probleme.

@eric63 tu n'as pas les yeux en face des trous
grillé !!! par FrancisFDZ
mieux : ce sont ces commandes !!
@sylvain3800 bravo

Dernière modification par ar barzh paour (Le 06/03/2020, à 10:10)


PC          : B760M DS3H DDR4,  12th Gen Intel(R) Core(TM) i3-12100, RAM DDR4 8GiB -2400 Ubuntu 24.04, 22.04, 20.04,18.04,16.04 et 26.04 en test
Portable1 : ThinkPad P50 I7-6820HQ, 16G0 Ram Ubuntu 24.04, 22.04 ,26.04   W10-PRO( en voyage )
Portable2 : T5750  @ 2.00GHz RAM 1GiB DDR2 667 Mhz Ubuntu 20.04 ( batterie HS )
stourm a ran war bep tachenn (Angela Duval) ( Je combats sur tous les fronts )

Hors ligne

#11 Le 06/03/2020, à 10:57

Nasman

Re : Tuto : les Informations utiles à donner lorsque j'ai un probleme.

eric63 a écrit :

salut
très bien ce tuto et agréable à lire
bon moi j’y vois des petites fautes de frappe et pas de fautes de petites frappes big_smile
ça me pique un peu les yeux
dans le chapitre 3 B et C
C ] les infos a donner …
C ] les infos à donner …

C ] c'est le scanner qui veux pas scanner a lors dans ce cas là , c'est ces commandes qui sont intéressante pour les aidants
C ] c'est le scanner qui veut pas scanner alors dans ce cas là , c'est ces commandes qui sont intéressantes pour les aidants

Quitte à vouloir corriger l'orthographe et la grammaire, je propose
C ] C'est le scanner qui ne veut pas scanner (ou numériser) alors, dans ce cas là, ce sont ces commandes qui sont intéressantes pour les aidants.


PC fixe sous Bionic 64 bits et portable avec Focal 64 bits

Hors ligne

#12 Le 06/03/2020, à 15:02

eric63

Re : Tuto : les Informations utiles à donner lorsque j'ai un probleme.

je les avais vu mais je préfère laisser le style d’jeun de l’auteur quitte à perdre de la syntaxe tongue
je poursuis ma quête en fait y’en a plein yikes

Tu viens de débarquer sur la banquise , tu débute débutes avec Linux et tu as besoin d'aide avec ton imprimante et ou ton scanner .
C'est pas facile, t'es tu es perdu  , tu ne sais pas ou chercher les informations et les tutos que tu trouves sont trop compliqués à suivre ... pas glop pas glop !

Heureusement la communauté des barbus va t'aider et trouver la solution á à ton problème

Mais pour cela ,tu va vas devoir créer un nouveau sujet pour demander de l'aide pour ton imprimante spécifique .

et si tu suis ce petit tuto pour créer ton message , tu  va vas te faire gagner un temps énorme par la suite ! car grâce á ce petit tuto tu  va vas donner toutes les infos utiles sur ton système, ton imprimante/scanner et ton problème  .
du coups  coup les anciens de la banquise , les  barbus vont pouvoir voir  tout de suite ou se situe ton problème et il ils vont donc pouvoir te guider pas à pas vers la solution.

J'ai essayé de faire ce tuto clair pour que les néophytes puissent le suivre pas a à pas je l'ai séparé en 4 parties
la partie compliqué compliquée c'est la partie 3. C'est là ou, il va falloir y passer , il te faudra utiliser le terminal pour récupérer les infos qu'il faudra nous  redonner par la suite dans une forme "lisible" qui sied á la modération .

pour ce faire ,il faudra utiliser un retour utilisable de commande :

    • Cliquer sur  le lien « Modifier » en bas à droite du message
    • Sélectionner le texte
    • Cliquer sur le <> de l'éditeur de message

comme indiqué dans le : Retour utilisable de commande

Bon , te voilà prévenu/e et fin prêt/e à te jeter a l'eau donc je commence le tuto

I ] Le Titre du message

Cela parait bête , mais si dans le titre, la marque et le modèle de l'imprimante pouvait être écrit cela serait déjà super utile pour les aidants , qui peuvent dejá se faire une première idée des pilotes qu'il te faut et  de la procédure qu'il te faudra suivre pour les installer au besoin .
Bon la plupart du temps ces infos sont données ,,,, mais des fois ... non ... c'est pour cela je précise.


II ] le corps du message

En premier lieu: les salutations de base et un petit résumé du problème,
lá c'est pas compliqué , dis nous ce qui marche pas : l'impression , le scanner , ptetre peut être les 2 si tu as une multifonction

et voilà la plupart des gens s’arrête ici et ça marche pas trop mal :
Un intervenant va venir et puis généralement il te demandera de rentrer une série de commandes dans un terminal afin de se faire une idée plus précise de ton problème et avec ces infos qu'il aura nouvellement glanéau glanè au fil des echanges échanges, il pourra commencer a à cerner le problème et proposer une solution.... ça marche bien mais c'est pas optimal !

Mais bon toi qui lit ce tuto , tu va vas gagner du temps ! :
tu va vas donner toutes les infos dont les aidants ont besoin et même celles dont il ils n'auront peut être pas besoin  directement dans ton premier message !
Ainsi, les aidants cerneront ton problème directement et pourront te proposer  une solution clefs en main .
c'est super non ?

Donc comme tu lis ce tuto ,et que t  tu veux gagner du temps , dans ton message tu va vas rajouter à la fin  un petit chapitre " les infos utiles" c'est la fameuse partie difficile du tuto

III ] les infos utiles

Bon la je ne te le cache pas, on va rentrer dans le dur ,et c'est lá qu'il va falloir sortir le terminal
c'est peut être compliqué/ impressionnant pour toi  ... mais il va falloir y passer a à un moment ou un autre car les infos donnés par le terminal sont précise  précises et utiles pour les aidants.

Et puis rappelle toi de cette règle simple : plus tu donne donnes des infos , plus vite on comprendra oú se situe le problème .
donc (il ne) faut pas hésiter.

Et puis c(e n)'est pas compliqué en fait tu va vas copier/coller les commandes que je vais te donner dans un terminal le terminal va vas te donner une réponse .
il te suffira  de copier coller l'ensemble (de) ces question/reponses  questions/réponses du terminal dans ton message d'aide en utilisant des balises codes <> , tu sais le fameux retour utilisable de commande

Allez c'est partit parti :

La première chose a à faire : ouvre un terminal , assure toi que ton imprimante/scanner est bien reliée áà  ton pc et qu'elle est allumée.
Ca y est ,tu es fin prêt/e à nous abreuver d'infos !
donc sans plus attendre :


A ] les infos sur ton système qu'il faudrait donner quelque soit le problème

c'est important donc copie colle le retour de cette commande :

cat /etc/lsb-release && uname -i && groups && lsusb

avec cela on saura pas mal de chose concernant ton système et son architecture c'est utile pour proposer des pilotes

B ] les infos à donner si ton problème est un problème d'impression/imprimante

si ton problème c'est pas un problème d'impression mais un problème de scanner : bravo tu vas pouvoir faire sauter toute cette partie: rends toi en C]
Bon , si c'est l'impression qui déconne alors  j'ai fait 2 parties ,( B1 et B2)  la partie la plus importante c'est B1 il faudra choisir la commande  B1 correspondant à ton Imprimante si tu donnes juste cette commande, tu auras déjà fait beaucoup pour accélérer la localisation de ton problème .   
les commandes donnés en B2 sont aussi très utiles, elles permettent de chercher en profondeur si le problème ne se situe pas en B1

allez courage tu vas y arriver .

B.1) les infos á donner spécifique à la marque de ton imprimante

ces infos sont primordiales car elles nous permettent de savoir si les pilotes de ton imprimante sont installés sur ton système (90 % des problèmes viennent de là) il te faut choisir la commande correspondant à la marque de ton imprimante

si tu as une EPSON :

dpkg -l | grep epson

si tu as une CANON

dpkg -l | grep cnijfilter
dpkg -l | grep cndrvcups

si tu as une BROTHER

dpkg -l | grep -i brother

si tu as une HP:

dpkg -l | grep hplip
hp-check

si tu as une SAMSUNG

dpkg -l | grep suld

pour le pilote et afin de savoir si le depot est installé

find /etc/apt -name '*.list' -exec bash -c 'echo -e "\n$1\n"; nl -ba "$1"' _ '{}' \;

B.2 )Les infos à donner quelle que soit la marque de l'imprimante

il suffit de copier/coller ces commandes :

dpkg -l | grep cups
lpstat -t
/usr/sbin/lpinfo -v
cat /var/log/cups/error_log
dpkg -l | grep -v ^ii

et voilà avec tout ceci ton problème sera clairement identifié et la solution clef en main pourra t'être proposée rapidement.


C ] les infos à donner si ton problème est un problème de scanner .

Bon des fois  c'est le scanner qui (ne) veux pas scanner alors dans ce cas là , ce sont c'est ces commandes qui sont intéressantes pour les aidants
quelque soit la marque du scanner

dpkg -l | grep sane
sane-find-scanner
sudo sane-find-scanner
scanimage -L
ls /etc/sane.d/
cat /etc/sane.d/dll.conf
ls  /lib/udev/rules.d | grep libsane

et voilà avec ça les barbus trouveront se situe le problème ou du moins pourront elliminer éliminer de nombreuses pistes de recherche


IV ] résumé

Le tuto à l'air compliqué comme cela mais c'est parce que je veux qu'il soit utile quel que soit le problème et quelle que soit la marque de l’imprimante /scanner donc je suis obligé de m'etaller étaler un peu ....
mais c'est pas si compliqué pour faire une bonne demande d'aide :
il te faut
1) un titre avec une marque et un modèle
2)expliquer si c'est un problème d'impression ou de scanner
3) donner les infos utiles pour gagner du temps en donnant :
le retour de la commande donné en A
+ en fonction de ton cas :
si tu veux imprimer la commande correspondant à ta marque B1 + les commandes  B2
ou
si tu veux scanner les commandes donné dans C

c'est tout ! et en suivant ce tuto que j'ai essayé de faire le plus clair possible , tu vas gagner un temps précieux.
@++

@ sylvain3800
voilà voilà désolé de faire mon puritain de l’orthographe mais moi ça me pique un peu les yeux
donc avant qu’il saignent
je ne corrige pas la ponctuation (l’espace après le point et pas avant suivi d’une majuscule)

par curiosité
á d‘où tu sors ce «á» ?

p.s :corrections des fausses corrections des «quel que soit»   «pourra t'être»  et «assure toi» et des balises codes méa culpa merci ar barzh paour

Dernière modification par eric63 (Le 07/03/2020, à 01:00)


Kubuntu 25.10 wayland  KDE Plasma 6.5.6 Qt 6.9.2 noyau 6.17.0-19 Framework 6.20
Asus B760+D4 i5-12400F 4.4Ghz DDR4 32Go nvidia RTX 3060 12GB
Utilisez les drivers libres avant d’ installer une brother avec le script demonipuch
J’utilise le clavier azerty AFNOR

Hors ligne

#13 Le 06/03/2020, à 20:36

ar barzh paour

Re : Tuto : les Informations utiles à donner lorsque j'ai un probleme.

@eric63
ton post fait mal aux yeux  , il manque les balises !!!!
quel que : placé devant le verbe être marque la concession: quels que soient les inconvénients, je prends le risque
quant à "pourra t'être" ça me semble  correct en tout cas plus que "pourrat être"
assure toi : impératif du premier groupe sans "s" !!
j'en reste là

à tout le monde

que pensez-vous de ce script ? (il a un  inconvénient (ou un avantage ?) , c'est qu'il conserve les codes de colorisation)
l'utilisateur a juste à répondre a deux questions ( et éventuellement à renseigner le mot de passe administrateur pour une commande qui en a besoin)

ce que je  comprends pas c'est que dès que j'essaie de le visualiser il disparait !!!!!!!!
j'ai réussi à le faire visualiser  en scindant mon script !!!!
en utilisant les balises code et/ou quote vraiment bizarre !!!!
je suppose que les balises [ h ]   et [ b ] utilisées dans le script sont en cause
du coup ça complique son utilisation !!!!

[EDIT]
attention il manquait dans le script ci-dessous la commande

cat /etc/lsb-release && uname -i && groups && lsusb

je l'ai ajoutée en avant dernière ligne
[/EDIT]

#!/bin/bash

echo " BASH A UTILISER EN CAS DE PROBLEME D'IMPRIMANTE OU DE SCANNER"
num=`date +%Y-%m-%d:%H-%M-%S`
fich="ImpScan-$num.txt"
echo "" >$fich
sep="========================================================================================"

function l-c {                   # c'est ce qui lance la commande
    echo $sep                    >> "$fich"
    echo $1                      >> "$fich"
    eval "$1"                    >> "$fich"
    echo $sep                    >> "$fich"
   }
function resultat {
echo "fichier enregistré le $num" >> $fich
echo "
      Vous pouvez récupérer le fichier 
      $fich
      pour le transmettre au forum"
   }

function choixImp {
    echo ""
    titre="\!\!\!\! CHOIX IMPRIMANTE Réponses possibles  : (E ou C ou B ou H ou S ou N)"
    texte="ce programme va renseigner un fichier en fonction de votre imprimante ....
           répondez
                    E  si vous avez une EPSON
                    C  si vous avez une CANON
                    B  si vous avez une BROTHER
                    H  si vous avez une HP
                    S  si vous avez une SAMSUNG
                    A  pour une autre
            "
    rep=`zenity --entry --title "$titre" --text "$texte" --width "800"`
    case $rep in
        [eE]  )      cmd="echo 'IMPRIMANTE EPSON'"      ; l-c "$cmd"
                    cmd="dpkg -l | grep -i epson"      ; l-c "$cmd"     ;;

        [cC]  )      cmd="echo 'IMPRIMANTE CANON'"      ; l-c "$cmd"
                    cmd="dpkg -l | grep -i cnijfilter" ; l-c "$cmd"
                    cmd="dpkg -l | grep -i cndrvcups"  ; l-c "$cmd"     ;;

        [bB] )       cmd="echo 'IMPRIMANTE BROTHER'"    ; l-c "$cmd"
                    cmd="dpkg -l | grep -i brother"    ; l-c "$cmd"     ;;

        [hH] )       cmd="echo 'IMPRIMANTE HP'"         ; l-c "$cmd"
                    cmd="dpkg -l | grep -i hplip"      ; l-c "$cmd"     
                    cmd="hp-check"                     ; l-c "$cmd"     ;;

        [sS] )       cmd="echo 'IMPRIMANTE Samsung"     ; l-c "$cmd"
                    cmd="dpkg -l | grep suld"          ; l-c "$cmd"
                    echo $sep                                                                            >> "$fich"     
                    find /etc/apt -name '*.list' -exec bash -c 'echo -e "\n$1\n"; nl -ba "$1"' _ '{}' \; >> "$fich"
                    echo $sep                                                                            >> "$fich"    ;;
        [aA] )                                                          ;;

        *     )         echo "utilisez seulement ECBHSA S.V.P."             ;;
    esac   
    }

function imprimante {
    choixImp
    cmd="dpkg -l | grep cups"                   ; l-c "$cmd" 
    cmd="lpstat -t"                             ; l-c "$cmd" 
    cmd="/usr/sbin/lpinfo -v"                   ; l-c "$cmd" 
    cmd="cat /var/log/cups/error_log"           ; l-c "$cmd" 
    cmd="dpkg -l | grep -v ^ii"                 ; l-c "$cmd" 
    }

function scanner {
    cmd="echo SCANNER"                          ; l-c "$cmd"
    cmd="dpkg -l | grep sane"                   ; l-c "$cmd"
    cmd="sudo sane-find-scanner -q"             ; l-c "$cmd"
    cmd="scanimage -L"                          ; l-c "$cmd" 
    cmd="ls /etc/sane.d/ "                      ; l-c "$cmd"
    cmd="cat /etc/sane.d/dll.conf"              ; l-c "$cmd"
    cmd="ls  /lib/udev/rules.d | grep libsane"  ; l-c "$cmd"
    }

function ImpScan {
    while [[ $rep != [?([iI])?(sS)?(nN)] ]]
    do
        titre="\!\!\!\! Réponses possibles  : (I ou S ou IS ou N)"
        texte="ce programme va générer un fichier ....
               répondez
                        I  si vous avez un problème d' imprimante
                        S  si vous avez un problème de scanner
                        IS si vous avez un problème d'imprimante et de scanner
                        N  pour arrêter
               remarque il peut y avoir demande de mot de passe administrateur "
        rep=`zenity --entry --title "$titre" --text "$texte" --width "800"`
        case $rep in
            [iI]     )    imprimante           ;   resultat    ; exit 64  ;;
            [sS]     )  scanner              ;   resultat    ; exit 65  ;;
            [iI][sS] )  imprimante ; scanner ;   resultat    ; exit 66  ;;
            [nN]     )                                         exit 63  ;;
            *         )     echo "utilisez seulement iIsSnN S.V.P."         ;;
        esac   
    done
    }
cmd="cat /etc/lsb-release && uname -i && groups && lsusb"                   ; l-c "$cmd"
ImpScan

Dernière modification par ar barzh paour (Le 08/03/2020, à 09:15)


PC          : B760M DS3H DDR4,  12th Gen Intel(R) Core(TM) i3-12100, RAM DDR4 8GiB -2400 Ubuntu 24.04, 22.04, 20.04,18.04,16.04 et 26.04 en test
Portable1 : ThinkPad P50 I7-6820HQ, 16G0 Ram Ubuntu 24.04, 22.04 ,26.04   W10-PRO( en voyage )
Portable2 : T5750  @ 2.00GHz RAM 1GiB DDR2 667 Mhz Ubuntu 20.04 ( batterie HS )
stourm a ran war bep tachenn (Angela Duval) ( Je combats sur tous les fronts )

Hors ligne

#14 Le 07/03/2020, à 21:52

ar barzh paour

Re : Tuto : les Informations utiles à donner lorsque j'ai un probleme.

@eric63
merci pour les corrections

pour mon script je suis en train d'étudier une simplification avec l'aide de yad ,
ce qui supprimerait les questions ... si vous avez une imprimante , si vous avez un scanner taper I S E C H etc
j'en suis au début et ce sera dans la semaine


PC          : B760M DS3H DDR4,  12th Gen Intel(R) Core(TM) i3-12100, RAM DDR4 8GiB -2400 Ubuntu 24.04, 22.04, 20.04,18.04,16.04 et 26.04 en test
Portable1 : ThinkPad P50 I7-6820HQ, 16G0 Ram Ubuntu 24.04, 22.04 ,26.04   W10-PRO( en voyage )
Portable2 : T5750  @ 2.00GHz RAM 1GiB DDR2 667 Mhz Ubuntu 20.04 ( batterie HS )
stourm a ran war bep tachenn (Angela Duval) ( Je combats sur tous les fronts )

Hors ligne

#15 Le 08/03/2020, à 01:37

Watael

Re : Tuto : les Informations utiles à donner lorsque j'ai un probleme.

je peux comprendre le besoin, mais je ne valide pas la démarche.

bon, je n'ai pas testé, mais c'est l'idée :

#!/bin/bash

echo "BASH A UTILISER EN CAS DE PROBLEME D'IMPRIMANTE OU DE SCANNER"
type -p zenity || { >&2 echo "missing prog: zenity; quitting."; exit 1;}

printf -v date '%(%Y-%m-%d:%H-%M-%S)T'
fich="/tmp/impScan-$date.txt"

declare -A Zenity=(
    [imprimante_titre]="\!\!\!\! CHOIX IMPRIMANTE Réponses possibles  : (E ou C ou B ou H ou S ou N)"
    [imprimante_texte]="Ce programme va renseigner un fichier en fonction de votre imprimante ....
    répondez
        E  si vous avez une EPSON
        C  si vous avez une CANON
        B  si vous avez une BROTHER
        H  si vous avez une HP
        S  si vous avez une SAMSUNG
        A  pour une autre"
    [impScan_titre]="\!\!\!\! Réponses possibles  : (I ou S ou IS ou N)"
    [impScan_texte]="Ce programme va générer un fichier ....
    répondez
        I  si vous avez un problème d' imprimante
        S  si vous avez un problème de scanner
        C si vous avez un problème d'imprimante et de scanner
        N  pour arrêter
    remarque : il peut y avoir demande de mot de passe administrateur "
)

sep()
{
    printf '=%.s' {1..80}; echo
}
resultat()
{
    echo "fichier enregistré le $num" >> $fich
    printf '\nVous pouvez récupérer le fichier\n%s\npour le transmettre au forum' "$fich"
}
imprimante()
{
    impAr=( "${FUNCNAME^^}" )

    local rep=`zenity --entry --title "${Zenity[${FUNCNAME}_titre]}" --text "${Zenity[${FUNCNAME}_texte]}" --width "800"`
    case $rep in
        [eE]) imp="EPSON"; pattern='epson';;
        [cC]) imp='CANON'; pattern='cnijfilter\|cndrvcups';;
        [bB]) imp='BROTHER'; pattern='brother';;
        [hH]) imp='HP'; pattern='hplip';;
        [sS]) imp='Samsung'; pattern='sld';;
        [aA]) : ;;
        *   ) echo "utilisez seulement ECBHSA S.V.P.";;
    esac

    impAr+=( "Imprimante: $imp" )
    impAr+=( "$(dpkg -l | grep -i "$pattern")" )
    impAr+=( "$(test "$imp" = "HP" && hp-check)" )
    impAr+=( "$(test "$imp" = "Samsung" && find /etc/apt -name '*.list' -exec bash -c 'echo -e "\n$1\n"; nl -ba "$1"' _ '{}' \;)" )

    impAr+=( "$(dpkg -l | grep cups)" )
    impAr+=( "$(lpstat -t)" )
    impAr+=( "$(/usr/sbin/lpinfo -v)" )
    impAr+=( "$(cat /var/log/cups/error_log)" )
    impAr+=( "$(dpkg -l | grep -v '^ii')" )

    for i in ${!impAr[@]}; do sep; echo "${impAr[i]}"; sep; done >>"$fich"
}
scanner()
{
    scanAr=( "${FUNCNAME^^}" )
    scanAr+=( "$(dpkg -l | grep sane)" )
    scanAr+=( "$(sudo sane-find-scanner -q)" )
    scanAr+=( "$(scanimage -L)" )
    scanAr+=( "$(ls /etc/sane.d/)" )
    scanAr+=( "$(cat /etc/sane.d/dll.conf)" )
    scanAr+=( "$(printf '%s\n' /lib/udev/rules.d/*libsane*)" )

    for i in ${!scanAr[@]}; do sep; echo "${impAr[i]}"; sep; done >>"$fich"
}

impScan()
{
    until [[ $rep == ?([iI]|[sS]|[cC]) ]]
    do
        local rep=`zenity --entry --title "${Zenity[${FUNCNAME}_titre]}" --text "${Zenity[${FUNCNAME}_texte]}" --width "800"`
        case $rep in
            [iI])  imprimante
                   ;;
            [sS])  scanner
                   ;;
            [cC])  imprimante
                   scanner
                   ;;
            [nN])  exit 1
                   ;;
               *)  echo "utilisez seulement iIsSnN S.V.P."
                   continue
                   ;;
        esac   
        resultat
        exit
    done
}

impScan

edit: on peut "complexifier" avec un tableau indexé listant les indices d'un tableau associatif :

ar=( 'cmd 1' 'cmd 2' )
declare -A aAr=( ['cmd_1']='cmd1 with args' ['cmd_2]='cmd2 with args' )
for cmd in "${ar[@]}"; do cmdAr+=( "$(sep)" "$cmd" "$(sep)" "$(aAr[$cmd]}" "$(sep)" )

ça, il faut tester.
au moins, ça me semble préférable à cmd="commande arg arg..."; funcDoing "$cmd" pour chaque commande.

Dernière modification par Watael (Le 08/03/2020, à 05:36)


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

Hors ligne

#16 Le 08/03/2020, à 08:08

ar barzh paour

Re : Tuto : les Informations utiles à donner lorsque j'ai un probleme.

@Watael
tu as le même problème que moi (EDIT :dans le forum /EDIT)?
dès que l'on essaie de lire le contenu de ton bash post (#15) , le bash disparaît , je ne sais pas si on voit tout ....

et je ne comprends pas :
je peux comprendre le besoin, mais je ne valide pas la démarche.
laquelle ?

Dernière modification par ar barzh paour (Le 16/03/2020, à 12:51)


PC          : B760M DS3H DDR4,  12th Gen Intel(R) Core(TM) i3-12100, RAM DDR4 8GiB -2400 Ubuntu 24.04, 22.04, 20.04,18.04,16.04 et 26.04 en test
Portable1 : ThinkPad P50 I7-6820HQ, 16G0 Ram Ubuntu 24.04, 22.04 ,26.04   W10-PRO( en voyage )
Portable2 : T5750  @ 2.00GHz RAM 1GiB DDR2 667 Mhz Ubuntu 20.04 ( batterie HS )
stourm a ran war bep tachenn (Angela Duval) ( Je combats sur tous les fronts )

Hors ligne

#17 Le 08/03/2020, à 12:28

ar barzh paour

Re : Tuto : les Informations utiles à donner lorsque j'ai un probleme.

@watael
désolé je n'arrive pas à utiliser ta méthode , si le coeur t'en dit ...
mais moi j'abandonne

une version fonctionnelle  qui utilise yad !!

#!/bin/bash
version="version 2020-03-08" #utilisation de yad 

echo " BASH A UTILISER EN CAS DE PROBLEME D'IMPRIMANTE OU DE SCANNER"
num=`date +%Y-%m-%d:%H-%M-%S`
fich="ImpScan-$num.txt"
echo "" >$fich                   #vide le fichier par précaution
sep1="[code]"
sep2="[/code]"

function l-c {                   # c'est ce qui lance la commande
    echo $sep1                    >> "$fich"
    echo $1                       >> "$fich"
    eval "$1"                     >> "$fich"
    echo $sep2                    >> "$fich"
   }

function resultat {
echo "fichier enregistré le $num" >> $fich
echo "
           Vous pouvez récupérer le fichier 
      $fich
           pour le transmettre au forum 
           tel quel (par copier-coller)
           car les balises sont incluses
           méthode : quand le fichier est ouvert
            Ctrl A   puis Ctrl C 
            et ensuite dans un post du forum Ctrl V "
   }

function imprimante {
    cmd="dpkg -l | grep cups"                   ; l-c "$cmd" 
    cmd="lpstat -t"                             ; l-c "$cmd" 
    cmd="/usr/sbin/lpinfo -v"                   ; l-c "$cmd" 
    cmd="cat /var/log/cups/error_log"           ; l-c "$cmd" 
    cmd="dpkg -l | grep -v ^ii"                 ; l-c "$cmd" 
    }

function scanner {
    cmd="echo SCANNER"                          ; l-c "$cmd"
    cmd="dpkg -l | grep sane"                   ; l-c "$cmd"
    cmd="sudo sane-find-scanner -q"             ; l-c "$cmd"
    cmd="scanimage -L"                          ; l-c "$cmd" 
    cmd="ls /etc/sane.d/ "                      ; l-c "$cmd"
    cmd="cat /etc/sane.d/dll.conf"              ; l-c "$cmd"
    cmd="ls  /lib/udev/rules.d | grep libsane"  ; l-c "$cmd"
    }

function information {
    cmd="cat /etc/lsb-release"                  ; l-c "$cmd"
    cmd="uname -i"                              ; l-c "$cmd"
    cmd="groups"                                ; l-c "$cmd"
    cmd="lsusb"                                 ; l-c "$cmd"
  }

function ImpScan { # reçoit deux paramètres : $1 Imp et $2 Scan
                   # $1 NON!BROTHER!EPSON!CANON!HP!SAMSUNG!Autre
                   # $2 NON!OUI
     case "$1" in
            "NON"     )     :                                                   ;;
            "BROTHER" )     cmd="echo 'IMPRIMANTE BROTHER'"    ; l-c "$cmd"
                            cmd="dpkg -l | grep -i brother"    ; l-c "$cmd"     ;;
            "EPSON"   )     cmd="echo 'IMPRIMANTE EPSON'"      ; l-c "$cmd"
                            cmd="dpkg -l | grep -i epson"      ; l-c "$cmd" 	;;
            "CANON"   )     cmd="echo 'IMPRIMANTE CANON'"      ; l-c "$cmd"
                            cmd="dpkg -l | grep -i cnijfilter" ; l-c "$cmd"
                            cmd="dpkg -l | grep -i cndrvcups"  ; l-c "$cmd"     ;;
            "HP"      )     cmd="echo 'IMPRIMANTE HP'"         ; l-c "$cmd"
                            cmd="dpkg -l | grep -i hplip"      ; l-c "$cmd"      
                            cmd="hp-check"                     ; l-c "$cmd"     ;;
            "SAMSUNG" )     cmd="echo 'IMPRIMANTE Samsung'"    ; l-c "$cmd"
                            cmd="dpkg -l | grep suld"          ; l-c "$cmd"
                            cmd="find /etc/apt -name '*.list' /
                            -exec bash -c 'echo -e \"\n\$1\n\"; nl -ba \"\$1\"' _ '{}' \;"
                            l-c "$cmd"                                          ;;
            "Autre"   )     cmd="echo 'IMPRIMANTE Autre'"      ; l-c "$cmd"     ;;
     esac
     case "$1" in
           "NON" ) :          ;;
           *     ) imprimante ;;
     esac
     case "$2" in
            "NON"     )     if [[ "$1" = "NON" ]] ; then rm $fich ; fi       ;;
            "OUI"     )     scanner ;;
     esac     
     }

function choix {
 res=$(yad   --title="$0" --center        \
        --text="Si l'Imprimante est concernée choisissez sa marque
                Indiquez si le scanner est concerné (oui/non)
                (si oui le mot de passe administrateur sera demandé) 

                et si vous voulez visualiser le fichier résultat
                laisser l'option visualisation sur OUI
                ce qui permettra de transmettre plus facilement
                le résultat sur le forum
                                                      "    \
        --form                       \
        --field="Imprimante:CB"        'NON!BROTHER!EPSON!CANON!HP!SAMSUNG!Autre'    \
        --field="Scanner:CB"           'NON!OUI'    \
        --field="Visualisation du résultat :CB"   'OUI!NON' \
        --button="gtk-close:1"       \
        --button="gtk-ok:0"          \     
        )
  [[ $? -eq 1 ]] && exit 0  # sort si on clic sur fermer
   imp=$(awk -F'|' '{print $1}' <<< $res)
  scan=$(awk -F'|' '{print $2}' <<< $res)
  visu=$(awk -F'|' '{print $3}' <<< $res)

}

choix
information
ImpScan "$imp" "$scan"
if [[ -e "$fich" ]] 
  then
    resultat
    case $visu in
	    "OUI"   )	xdg-open "./$fich" 	;;
	    "NON"	)	exit 63       	;;
	esac
fi

Dernière modification par ar barzh paour (Le 08/03/2020, à 13:10)


PC          : B760M DS3H DDR4,  12th Gen Intel(R) Core(TM) i3-12100, RAM DDR4 8GiB -2400 Ubuntu 24.04, 22.04, 20.04,18.04,16.04 et 26.04 en test
Portable1 : ThinkPad P50 I7-6820HQ, 16G0 Ram Ubuntu 24.04, 22.04 ,26.04   W10-PRO( en voyage )
Portable2 : T5750  @ 2.00GHz RAM 1GiB DDR2 667 Mhz Ubuntu 20.04 ( batterie HS )
stourm a ran war bep tachenn (Angela Duval) ( Je combats sur tous les fronts )

Hors ligne

#18 Le 08/03/2020, à 13:09

Watael

Re : Tuto : les Informations utiles à donner lorsque j'ai un probleme.

je peux comprendre le besoin, mais je ne valide pas la démarche.

je veux dire que je comprends bien qu'on a besoin de formater les résultats de commandes par souci de lisibilité, mais que la méthode me semble mauvaise.
d'ailleurs, si je voulais absolument faire comme tu le veux, à la place je ferais : fonctionAffichage 'ma commande avec des arguments'
mais je ne ferais jamais ça : tout plutôt qu'à un moment ou un autre devoir utiliser eval.

dès que l'on essaie de lire le contenu de ton bash post (#25) , le bash disparaît , je ne sais pas si on voit tout ....

je ne comprends pas. il s'agit de l'affichage sur le forum, ou de l'exécution du script ?

Dernière modification par Watael (Le 08/03/2020, à 13:12)


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

Hors ligne

#19 Le 08/03/2020, à 13:32

ar barzh paour

Re : Tuto : les Informations utiles à donner lorsque j'ai un probleme.

Watael a écrit :

je ne comprends pas. il s'agit de l'affichage sur le forum, ou de l'exécution du script ?

c'est dans le post du forum
essaie de cliquer sur ton bash dans le post #25 par exemple
ou alors ça vient de mon PC mais j'en doute je vais essayer sur un autre PC!!!

voilà c'est identique sur mon portable !!!!!!!
dès qu'on clique sur la fenêtre contenant le bash ,le contenu disparaît pour réapparaître un moment assez long suivant

quand je pourrais lire le post #25 je me pencherai dessus un peu plus !!!!!

Dernière modification par ar barzh paour (Le 08/03/2020, à 13:44)


PC          : B760M DS3H DDR4,  12th Gen Intel(R) Core(TM) i3-12100, RAM DDR4 8GiB -2400 Ubuntu 24.04, 22.04, 20.04,18.04,16.04 et 26.04 en test
Portable1 : ThinkPad P50 I7-6820HQ, 16G0 Ram Ubuntu 24.04, 22.04 ,26.04   W10-PRO( en voyage )
Portable2 : T5750  @ 2.00GHz RAM 1GiB DDR2 667 Mhz Ubuntu 20.04 ( batterie HS )
stourm a ran war bep tachenn (Angela Duval) ( Je combats sur tous les fronts )

Hors ligne

#20 Le 08/03/2020, à 13:48

melixgaro

Re : Tuto : les Informations utiles à donner lorsque j'ai un probleme.

J'ai le même problème pour lire le script de Watael. Dès que je faire défiler, le script disparaît.


Linux depuis ~2007. Xubuntu seulement.

Hors ligne

#21 Le 08/03/2020, à 13:49

melixgaro

Re : Tuto : les Informations utiles à donner lorsque j'ai un probleme.

Test

Watael a écrit :

je peux comprendre le besoin, mais je ne valide pas la démarche.

bon, je n'ai pas testé, mais c'est l'idée :

#!/bin/bash

echo "BASH A UTILISER EN CAS DE PROBLEME D'IMPRIMANTE OU DE SCANNER"
type -p zenity || { >&2 echo "missing prog: zenity; quitting."; exit 1;}

printf -v date '%(%Y-%m-%d:%H-%M-%S)T'
fich="/tmp/impScan-$date.txt"

declare -A Zenity=(
    [imprimante_titre]="\!\!\!\! CHOIX IMPRIMANTE Réponses possibles  : (E ou C ou B ou H ou S ou N)"
    [imprimante_texte]="Ce programme va renseigner un fichier en fonction de votre imprimante ....
    répondez
        E  si vous avez une EPSON
        C  si vous avez une CANON
        B  si vous avez une BROTHER
        H  si vous avez une HP
        S  si vous avez une SAMSUNG
        A  pour une autre"
    [impScan_titre]="\!\!\!\! Réponses possibles  : (I ou S ou IS ou N)"
    [impScan_texte]="Ce programme va générer un fichier ....
    répondez
        I  si vous avez un problème d' imprimante
        S  si vous avez un problème de scanner
        C si vous avez un problème d'imprimante et de scanner
        N  pour arrêter
    remarque : il peut y avoir demande de mot de passe administrateur "
)

sep()
{
    printf '=%.s' {1..80}; echo
}
resultat()
{
    echo "fichier enregistré le $num" >> $fich
    printf '\nVous pouvez récupérer le fichier\n%s\npour le transmettre au forum' "$fich"
}
imprimante()
{
    impAr=( "${FUNCNAME^^}" )

    local rep=`zenity --entry --title "${Zenity[${FUNCNAME}_titre]}" --text "${Zenity[${FUNCNAME}_texte]}" --width "800"`
    case $rep in
        [eE]) imp="EPSON"; pattern='epson';;
        [cC]) imp='CANON'; pattern='cnijfilter\|cndrvcups';;
        [bB]) imp='BROTHER'; pattern='brother';;
        [hH]) imp='HP'; pattern='hplip';;
        [sS]) imp='Samsung'; pattern='sld';;
        [aA]) : ;;
        *   ) echo "utilisez seulement ECBHSA S.V.P.";;
    esac

    impAr+=( "Imprimante: $imp" )
    impAr+=( "$(dpkg -l | grep -i "$pattern")" )
    impAr+=( "$(test "$imp" = "HP" && hp-check)" )
    impAr+=( "$(test "$imp" = "Samsung" && find /etc/apt -name '*.list' -exec bash -c 'echo -e "\n$1\n"; nl -ba "$1"' _ '{}' \;)" )

    impAr+=( "$(dpkg -l | grep cups)" )
    impAr+=( "$(lpstat -t)" )
    impAr+=( "$(/usr/sbin/lpinfo -v)" )
    impAr+=( "$(cat /var/log/cups/error_log)" )
    impAr+=( "$(dpkg -l | grep -v '^ii')" )

    for i in ${!impAr[@]}; do sep; echo "${impAr[i]}"; sep; done >>"$fich"
}
scanner()
{
    scanAr=( "${FUNCNAME^^}" )
    scanAr+=( "$(dpkg -l | grep sane)" )
    scanAr+=( "$(sudo sane-find-scanner -q)" )
    scanAr+=( "$(scanimage -L)" )
    scanAr+=( "$(ls /etc/sane.d/)" )
    scanAr+=( "$(cat /etc/sane.d/dll.conf)" )
    scanAr+=( "$(printf '%s\n' /lib/udev/rules.d/*libsane*)" )

    for i in ${!scanAr[@]}; do sep; echo "${impAr[i]}"; sep; done >>"$fich"
}

impScan()
{
    until [[ $rep == ?([iI]|[sS]|[cC]) ]]
    do
        local rep=`zenity --entry --title "${Zenity[${FUNCNAME}_titre]}" --text "${Zenity[${FUNCNAME}_texte]}" --width "800"`
        case $rep in
            [iI])  imprimante
                   ;;
            [sS])  scanner
                   ;;
            [cC])  imprimante
                   scanner
                   ;;
            [nN])  exit 1
                   ;;
               *)  echo "utilisez seulement iIsSnN S.V.P."
                   continue
                   ;;
        esac   
        resultat
        exit
    done
}

impScan

edit: on peut "complexifier" avec un tableau indexé listant les indices d'un tableau associatif :

ar=( 'cmd 1' 'cmd 2' )
declare -A aAr=( ['cmd_1']='cmd1 with args' ['cmd_2]='cmd2 with args' )
for cmd in "${ar[@]}"; do cmdAr+=( "$(sep)" "$cmd" "$(sep)" "$(aAr[$cmd]}" "$(sep)" )

ça, il faut tester.
au moins, ça me semble préférable à cmd="commande arg arg..."; funcDoing "$cmd" pour chaque commande.


Linux depuis ~2007. Xubuntu seulement.

Hors ligne

#22 Le 08/03/2020, à 14:15

Watael

Re : Tuto : les Informations utiles à donner lorsque j'ai un probleme.

ah? je n'ai pas de problème de "lecture" du site avec Chromium.
par contre, effectivement, avec Firefox, c'est la cata.
mais on peut faire une sélection à l'aveugle, copier, puis coller dans son éditeur favori.


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

Hors ligne

#23 Le 08/03/2020, à 16:21

ar barzh paour

Re : Tuto : les Informations utiles à donner lorsque j'ai un probleme.

je bute toujours

[code]jpb@jpb-MS-7A70:~$ cmd="dpkg -l | grep cups"
jpb@jpb-MS-7A70:~$ aAfficher=""
jpb@jpb-MS-7A70:~$ aAfficher+=("$(${cmd})")
dpkg-query: aucun paquet ne correspond à |
jpb@jpb-MS-7A70:~$ [/code]

@melixgaro et Watael

quand je lance le script du #21 (je n'arrive pas à copier l'original) j'obtiens

jpb@jpb-MS-7A70:~$ bash   ./ImpScan-W.sh
BASH A UTILISER EN CAS DE PROBLEME D'IMPRIMANTE OU DE SCANNER
/usr/bin/zenity

et avec -x

jpb@jpb-MS-7A70:~$ bash   -x ./ImpScan-W.sh
+ echo 'BASH A UTILISER EN CAS DE PROBLEME D'\''IMPRIMANTE OU DE SCANNER'
BASH A UTILISER EN CAS DE PROBLEME D'IMPRIMANTE OU DE SCANNER
+ type -p zenity
/usr/bin/zenity
+ printf -v date '%(%Y-%m-%d:%H-%M-%S)T'
+ fich=/tmp/impScan-2020-03-08:15-01-53.txt
+ Zenity=([imprimante_titre]="\!\!\!\! CHOIX IMPRIMANTE Réponses possibles  : (E ou C ou B ou H ou S ou N)" [imprimante_texte]="Ce programme va renseigner un fichier en fonction de votre imprimante ....
    répondez
        E  si vous avez une EPSON
        C  si vous avez une CANON
        B  si vous avez une BROTHER
        H  si vous avez une HP
        S  si vous avez une SAMSUNG
        A  pour une autre" [impScan_titre]="\!\!\!\! Réponses possibles  : (I ou S ou IS ou N)" [impScan_texte]="Ce programme va générer un fichier ....
    répondez
        I  si vous avez un problème d' imprimante
        S  si vous avez un problème de scanner
        C si vous avez un problème d'imprimante et de scanner
        N  pour arrêter
    remarque : il peut y avoir demande de mot de passe administrateur ")
+ declare -A Zenity
+ impScan
+ [[ '' == ?([iI]|[sS]|[cC]) ]]
jpb@jpb-MS-7A70:~$ 

,je laisse tomber

Dernière modification par ar barzh paour (Le 08/03/2020, à 16:23)


PC          : B760M DS3H DDR4,  12th Gen Intel(R) Core(TM) i3-12100, RAM DDR4 8GiB -2400 Ubuntu 24.04, 22.04, 20.04,18.04,16.04 et 26.04 en test
Portable1 : ThinkPad P50 I7-6820HQ, 16G0 Ram Ubuntu 24.04, 22.04 ,26.04   W10-PRO( en voyage )
Portable2 : T5750  @ 2.00GHz RAM 1GiB DDR2 667 Mhz Ubuntu 20.04 ( batterie HS )
stourm a ran war bep tachenn (Angela Duval) ( Je combats sur tous les fronts )

Hors ligne

#24 Le 08/03/2020, à 16:32

Watael

Re : Tuto : les Informations utiles à donner lorsque j'ai un probleme.

il ne faut pas stocker les commandes "complexes" dans des variables.
c'est àmha une mauvaise pratique.

ah! ce n'est pas ?(
c'est @(
je n'avais pas vérifié, excuse-moi.

Dernière modification par Watael (Le 08/03/2020, à 16:32)


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

Hors ligne

#25 Le 08/03/2020, à 16:40

ar barzh paour

Re : Tuto : les Informations utiles à donner lorsque j'ai un probleme.

pour la visualisation des scripts effectivement c'est bon avec chromium !!!!!


PC          : B760M DS3H DDR4,  12th Gen Intel(R) Core(TM) i3-12100, RAM DDR4 8GiB -2400 Ubuntu 24.04, 22.04, 20.04,18.04,16.04 et 26.04 en test
Portable1 : ThinkPad P50 I7-6820HQ, 16G0 Ram Ubuntu 24.04, 22.04 ,26.04   W10-PRO( en voyage )
Portable2 : T5750  @ 2.00GHz RAM 1GiB DDR2 667 Mhz Ubuntu 20.04 ( batterie HS )
stourm a ran war bep tachenn (Angela Duval) ( Je combats sur tous les fronts )

Hors ligne