Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1883 connectés 

  FORUM HardWare.fr
  Linux et OS Alternatifs
  Codes et scripts

  bash récupérer uniquement nombre après le string "--"

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

bash récupérer uniquement nombre après le string "--"

n°1353447
torlik
Posté le 26-02-2014 à 00:02:56  profilanswer
 

Salut
 
Tout simplement :

Code :
  1. $ lpstat -t | awk '{print $1}'
  2. scheduler
  3. no
  4. device
  5. device
  6. HP-LaserJet-4050-Series-
  7. Lexmark-C540
  8. printer
  9. The
  10. printer
  11. HP-LaserJet-4050-Series--76
  12. HP-LaserJet-4050-Series--77


 
Comment récupérer 76 et 77 ? Le problème c'est avec un sed je ne peux pas dire "je veux juste les chiffres" parce que les imprimantes contiennent un nombre.  
Donc j'aurai pensé à prendre ce qu'il y a après "--" comme ça semble être une chaine unique dans la sortie de la commande. Mais je ne sais pas comment ?
 
Merci  :hello:

mood
Publicité
Posté le 26-02-2014 à 00:02:56  profilanswer
 

n°1353453
zipe31
Posté le 26-02-2014 à 07:38:40  profilanswer
 

Salut,
 

$ cat plop  
    scheduler
    no
    device
    device
    HP-LaserJet-4050-Series-
    Lexmark-C540
    printer
    The
    printer
    HP-LaserJet-4050-Series--76
    HP-LaserJet-4050-Series--77


 

$ grep -Po '.*--\K.*' plop  
76
77


 ;)
 
PS. Au cas ou tu voudrais une solution avec sed :

$ sed -rn 's/.*--(.*)$/\1/p' plop  
76
77


Message édité par zipe31 le 26-02-2014 à 08:13:34

---------------
$ man woman
n°1353455
Fork Bomb
Obsédé textuel
Posté le 26-02-2014 à 08:19:43  profilanswer
 

J’aime bien awk, on peut modifier le séparateur de colonnes.

Code :
  1. echo "HP-LaserJet-4050-Series--76"|awk -F'--' '{print $2}'


Message édité par Fork Bomb le 26-02-2014 à 08:20:04

---------------
Décentralisons Internet-Bépo-Troll Bingo - "Pour adoucir le mélange, pressez trois quartiers d’orange !"
n°1353475
torlik
Posté le 26-02-2014 à 10:16:32  profilanswer
 

en fait ça ne va pas. Une autre imprimante ne renvoie pas la même chose :/
 
Mais comme ça c'est ok :
lpstat | awk '{print $1}' | grep -Po '.*-\K.*'`
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Linux et OS Alternatifs
  Codes et scripts

  bash récupérer uniquement nombre après le string "--"

 

Sujets relatifs
Erreur script bash : TSET: 5: TSET: Syntax error: "(" unexpectedUn bon livre pour apprendre à programmer en BASH ?
Problème script bash & lircRécupérer un caractère au clavier sans utiliser la touche entrée ?
Script bash de démarrage qui se lance après un sudo halt[shell] script sauvegarde recuperer nom hote windows
Script Bash Installation OpenVpnScript Bash Installation rutorrent
[résolu] Fichiers à récupérer avant formatageContôler une sous-tache de fond spécifique d'un script Bash ?
Plus de sujets relatifs à : bash récupérer uniquement nombre après le string "--"


Copyright © 1997-2018 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR