IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Shell et commandes POSIX Discussion :

Lancer une commande avec pipes depuis un script


Sujet :

Shell et commandes POSIX

  1. #1
    Membre régulier Avatar de theclem35
    Homme Profil pro
    Technicien Réseaux & Télécommunications
    Inscrit en
    Décembre 2007
    Messages
    148
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Technicien Réseaux & Télécommunications
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Décembre 2007
    Messages : 148
    Points : 86
    Points
    86
    Par défaut Lancer une commande avec pipes depuis un script
    Salut,

    J'ai un script qui me permet d'ouvrir de nouvelles fenetres de terminal pour chaque commande que j'execute.
    Pour des commandes simples ca marche très bien, mais pour des commandes avec des pipes, il ne me prend en compte que la commande avant le pipe.

    J'ai donc recours à l'utilisation d'un deuxième script pour les commandes un peu plus complexes, que je lance depuis mon script principal.

    Exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    #!/bin/bash
     
    gnome-terminal --geometry=148x17+0+0 --title="Capture d'URLs GET/POST" -x tshark -i $1 -R http.request -T fields -e ip.src -e http.request.method -e tcp.dstport -e http.request.full_uri &
    # Fonctionne
     
    gnome-terminal --geometry=75x12+0+487 --title="Capture des identifiants de formulaires" -x tshark -i $1 -l -R "(http.request.method == \"POST\") && ((data-text-lines contains \"pass\") || (data-text-lines contains \"pwd\"))" -T fields -e ip.src -e http.request.full_uri -e text | sed '/^/{s//\n--------------------------- Nouvelles données ---------------------------\n\n/}; s/\(.*\)\t.*\\n,\(.*\)/\1\n\2/;:z;s/\(.*\n\)\(.*\)&/\1\2\n/;tz' &
    # Ne fonctionne pas ! Doit etre remplacé par :
    gnome-terminal --geometry=75x12+0+487 --title="Capture des identifiants de formulaires" -e "./id_forms.sh $1" &
    Y a t-il possibilité d'éviter de passer par d'autres scripts pour mes commandes avec pipes ?

    Merci!

  2. #2
    Modérateur
    Avatar de jlliagre
    Homme Profil pro
    Ingénieur support avancé & développement
    Inscrit en
    Juin 2007
    Messages
    2 695
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur support avancé & développement
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 695
    Points : 7 882
    Points
    7 882
    Par défaut
    Essaie çà:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    gnome-terminal --geometry=75x12+0+487 --title="Capture des identifiants de formulaires" -x bash -c 'tshark -i '"$1"' -l -R "(http.request.method == \"POST\") && ((data-text-lines contains \"pass\") || (data-text-lines contains \"pwd\"))" -T fields -e ip.src -e http.request.full_uri -e text | sed "/^/{s//\n--------------------------- Nouvelles données ---------------------------\n\n/}; s/\(.*\)\t.*\\n,\(.*\)/\1\n\2/;:z;s/\(.*\n\)\(.*\)&/\1\2\n/;tz" &'
    ɹǝsn *sıɹɐlos*

  3. #3
    Membre régulier Avatar de theclem35
    Homme Profil pro
    Technicien Réseaux & Télécommunications
    Inscrit en
    Décembre 2007
    Messages
    148
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Technicien Réseaux & Télécommunications
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Décembre 2007
    Messages : 148
    Points : 86
    Points
    86
    Par défaut
    Ca fonctionne merci!
    Après j'ai rajouté pas mal de commandes et ca devient illisible, je reste finalement pour certaines sur des scripts.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Lancer une requête sous MySQL depuis un script Unix
    Par schranz dans le forum Shell et commandes GNU
    Réponses: 10
    Dernier message: 15/07/2014, 15h45
  2. Impossible d'exécuter une commande avec su dans un script bash
    Par koshieDotFr dans le forum Shell et commandes GNU
    Réponses: 8
    Dernier message: 18/12/2012, 13h47
  3. Lancer une commande shell (openssl) depuis une programme java
    Par hnsfr dans le forum Général Java
    Réponses: 1
    Dernier message: 23/04/2012, 10h21
  4. lancer une commande avec un user autre que root
    Par rootdaoud dans le forum Unix
    Réponses: 2
    Dernier message: 26/03/2008, 16h43
  5. Lancer une commande système avec VC++
    Par xs_nady dans le forum MFC
    Réponses: 1
    Dernier message: 17/03/2006, 14h03

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo