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 GNU Discussion :

Exécuter commande dd en variable


Sujet :

Shell et commandes GNU

  1. #1
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2014
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Juillet 2014
    Messages : 44
    Points : 57
    Points
    57
    Par défaut Exécuter commande dd en variable
    Bonjour,

    Je souhaite exécuter cette commande autant que variable:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    dd if=/dev/zero of=/tmp/test.data bs=1M count=1  2> /tmp/fichier.txt
    voici la méthode que j'ai faite mais cela ne fonctionne pas:


    test=$(dd if=/dev/zero of=/tmp/test.data bs=1M count=1 2)

    echo "voici ma commande $test " 2> /tmp/fichier.txt

    Merci,

  2. #2
    Modérateur
    Avatar de N_BaH
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7 552
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7 552
    Points : 19 389
    Points
    19 389
    Par défaut
    cela ne fonctionne pas


    qu'attends-tu ?
    qu'obtiens-tu ?
    .
    N'oubliez pas de consulter les cours shell, la FAQ, et les pages man.

  3. #3
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2014
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Juillet 2014
    Messages : 44
    Points : 57
    Points
    57
    Par défaut
    salut,

    J'obtiens une page blanche dans le fichier txt.

    Quand je lance cette commande j'obtiens les résultats dans mon fichier txt.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    dd if=/dev/zero of=/tmp/test.data bs=1M count=1  2> /tmp/fichier.txt
    Et quand j'affecte une variable pour cette commande ça me renvoie une page blanche dans fichier txt.


    Merci

  4. #4
    Modérateur
    Avatar de N_BaH
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7 552
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7 552
    Points : 19 389
    Points
    19 389
    Par défaut
    lors de l'exécution de la commande dans le terminal, la sortie d'erreur est redirigée vers un fichier : tu obtiens ce que tu veux.
    lors de son exécution dans un sous-interpréteur (substitution de commande), tu dois rediriger la sortie d'erreur vers la sortie standard, et la sortie standard vers /dev/null.

    tu pourrais aussi simplement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    echo -n "sortie de la commande" > fichier
    dd if=/dev/zero of=/tmp/test.data bs=1M count=1  2>> /tmp/fichier
    .
    N'oubliez pas de consulter les cours shell, la FAQ, et les pages man.

  5. #5
    Membre régulier
    Inscrit en
    Août 2009
    Messages
    107
    Détails du profil
    Informations personnelles :
    Âge : 49

    Informations forums :
    Inscription : Août 2009
    Messages : 107
    Points : 124
    Points
    124
    Par défaut
    Il faut effectivement que tu redirigies ta sortie erreur 2 sur la sortie standard :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    test=$(dd if=/dev/zero of=/tmp/test.data bs=1M count=1 2>&1 )
    echo "voici ma commande $test " > /tmp/fichier.txt
    cat /tmp/fichier.txt
    voici ma commande 1+0 records in.
    1+0 records out.

  6. #6
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2014
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Juillet 2014
    Messages : 44
    Points : 57
    Points
    57
    Par défaut
    Dsl pr la réponse tardive,

    Merci pour ta réponse c'étais ça que je cherché.


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

Discussions similaires

  1. Exécuter commande à la fermeture de Windows
    Par rabobsky dans le forum Autres Logiciels
    Réponses: 12
    Dernier message: 19/02/2014, 11h06
  2. [PowerBuilder] Exécution commande
    Par Oncle Pete dans le forum Powerbuilder
    Réponses: 5
    Dernier message: 16/04/2010, 15h04
  3. [ debutant ] exécution commande system() en click JButton
    Par ganjaman dans le forum Interfaces Graphiques en Java
    Réponses: 4
    Dernier message: 18/11/2005, 18h59
  4. Réponses: 3
    Dernier message: 20/09/2005, 18h27
  5. Réponses: 5
    Dernier message: 19/04/2005, 08h50

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