Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
|
utilisateurs:ar_barzh_paour:brouillons:script_pb_imp [Le 09/03/2020, 05:48] fabux Rectif balise <code> (et pas [code] comme le forum :-) ) |
utilisateurs:ar_barzh_paour:brouillons:script_pb_imp [Le 11/09/2022, 13:15] (Version actuelle) moths-art Suppression des espaces en fin de ligne (détecté et corrigé via le bot wiki-corrector (https://forum.ubuntu-fr.org/viewtopic.php?id=2067892) |
||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| + | script pour aider à la résolution de problème d'imprimante ou de scanner amis qui utilise yad | ||
| + | il manque plein de retour chariot !!!!!! | ||
| + | |||
| + | #!/bin/bash | ||
| + | |||
| + | version="version 2020-03-08" #utilisation de yad | ||
| + | |||
| + | titre=" BASH A UTILISER EN CAS DE PROBLEME D'IMPRIMANTE OU DE SCANNER" | ||
| + | |||
| + | echo $titre | ||
| + | |||
| + | 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" | ||
| + | echo >> "$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 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 { | ||
| + | # en 2ème ligne il faut lire tiret tiret texte="$0 et non 1.- texte="$0 | ||
| + | |||
| + | res=$(yad --title="$titre" --center \ | ||
| + | --text="$0 | ||
| + | IMPRIMANTE : Si l'Imprimante est concernée ou non , choisissez sa marque si oui | ||
| + | SCANNER : Indiquez s'il est concerné (oui/non) (si oui le mot de passe administrateur sera demandé) | ||
| + | |||
| + | et si vous voulez visualiser le fichier résultat laissez 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 | ||
| + | |||
| + | |||
| + | |||
| + | |||
| Script pour aider à la résolution de problème d'imprimante ou de scanner | Script pour aider à la résolution de problème d'imprimante ou de scanner | ||
| - | <code> | + | <code bash help_impscan.sh> |
| #!/bin/bash | #!/bin/bash | ||