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 :

awk avec system


Sujet :

Shell et commandes GNU

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Ingénieur
    Inscrit en
    Mai 2004
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Ingénieur

    Informations forums :
    Inscription : Mai 2004
    Messages : 69
    Par défaut awk avec system
    Bonjour,

    J'essaie cette commande :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    awk -v rep=$rep {
    annee=2007
    mois=09
    jour=23
     
    system("sh `rep/NumSem annee mois jour`")
     
    }
    Il ignore la variable rep qui contient le nom du répertoire où se trouve l'executable NumSem. Ainsi il ne trouve pas l'executable.

  2. #2
    Membre émérite Avatar de BlaireauOne
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    492
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2007
    Messages : 492
    Par défaut
    2 possibilités ci-dessous :

    le résultat de NumSem est chargé dans la variable VarResultat
    ou le résultat est écrit en sortie ( system )


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    awk -v rep=$rep '
    {
    	annee="2007"
    	mois="09"
    	jour="23"
    	CommandLine=rep"/NumSem "annee" "mois" "jour
    	CommandLine | getline
    	VarResultat=$0
    	close(CommandLine)
    	print "* resultat = "VarResultat
    	# system(rep"/NumSem "annee" "mois" "jour)
    } ' fichier.txt

  3. #3
    Membre confirmé
    Profil pro
    Élève
    Inscrit en
    Avril 2004
    Messages
    101
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Élève

    Informations forums :
    Inscription : Avril 2004
    Messages : 101
    Par défaut
    Et toujours au sein d'un awk, comment faire si l'on veut écrire une ligne qui contient des espaces dans un fichier ?
    J'ai essayé le code ci-dessous mais ça ne marche que si la variable awk LIGNE ne contient pas d'espace.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    system("echo "LIGNE">>"MON_FICHIER);

  4. #4
    Membre émérite Avatar de BlaireauOne
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    492
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2007
    Messages : 492
    Par défaut
    Pourquoi ne fais-tu pas simplement :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    var_avec_nom_de_fichier="fichier.txt"
    .../...
    print LIGNE >> "nom_de_fichier"
    ou
    print LIGNE >> var_avec_nom_de_fichier

  5. #5
    Membre confirmé
    Profil pro
    Élève
    Inscrit en
    Avril 2004
    Messages
    101
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Élève

    Informations forums :
    Inscription : Avril 2004
    Messages : 101
    Par défaut
    Effectivement, c'est tout simple et ça marche bien.

    Merci bcp.

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

Discussions similaires

  1. Erreur fatale : compilation avec System.RTLVersion
    Par Beauserge dans le forum Delphi
    Réponses: 2
    Dernier message: 01/11/2006, 00h47
  2. récupérer le résultat avec "system()"
    Par kboo dans le forum MFC
    Réponses: 12
    Dernier message: 09/06/2006, 10h50
  3. [C#][2.0] Traces avec System.Diagnostics.Trace
    Par slopera dans le forum ASP.NET
    Réponses: 2
    Dernier message: 20/02/2006, 09h51
  4. killer un prog lancé avec system()
    Par seal3 dans le forum C++
    Réponses: 8
    Dernier message: 04/11/2005, 22h12
  5. Réponses: 11
    Dernier message: 12/04/2005, 14h08

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