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

Linux Discussion :

[KSH] Nom de script récupéré dans un autre script à partir d'un csv


Sujet :

Linux

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Février 2010
    Messages
    66
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 66
    Points : 51
    Points
    51
    Par défaut [KSH] Nom de script récupéré dans un autre script à partir d'un csv
    Bonjour,

    J'ai un fichier csv.
    Qui contient des lignes de trois valeurs séparées par des ';' :
    JOB01;STATUT01;SCRIPT01
    JOB02;STATUT02;SCRIPT02
    etc...
    Exemple de ligne :
    TEST 1;PLANIFIE;$HOME/script/test.ksh
    Dans un script auquel je fourni comme argument la chaîne de valeur 'TEST 1', j'arrive à récupérer la chaîne '$HOME/script/test.ksh' dans une variable $script.
    Malheureusement, quand je veux lancer $script, il semblerait que $HOME ne soit pas interprété et mon script demeure introuvable.

    Serait-ce une erreur de syntaxe ?

    Merci.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    function Recup_Script
    {
    	script=$HOME`grep $1 fichier.csv | cut -f3 -d';'`	
    	$script
    }
    où $1 = 'TEST 1'

  2. #2
    Membre averti Avatar de fransoo
    Inscrit en
    Novembre 2009
    Messages
    209
    Détails du profil
    Informations forums :
    Inscription : Novembre 2009
    Messages : 209
    Points : 300
    Points
    300
    Par défaut
    Citation Envoyé par Rithy666 Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    function Recup_Script
    {
    	script=$HOME`grep $1 fichier.csv | cut -f3 -d';'`	
    	$script
    }
    où $1 = 'TEST 1'
    Ton troisième champ contient déjà $HOME le résultat serait équivalent à $HOME$HOME/...
    Il serait prudent de mettre $1 entre guillemets.
    Pas sûr que $script fasse le job, peut être eval "$script".
    Il n'est pas nécesaire de passer par une variable intermédiaire, si ceci fonctionne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    script=`grep "$1" fichier.csv | cut -f3 -d';'`	
    eval "$script"
    alors ça aussi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    eval "$(grep "$1" fichier.csv | cut -f3 -d';')"

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Février 2010
    Messages
    66
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 66
    Points : 51
    Points
    51
    Par défaut
    Citation Envoyé par fransoo Voir le message
    ... si ceci fonctionne :
    Ca marche merci !

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

Discussions similaires

  1. Exécution d'un Script personnel dans un autre Script
    Par kuja2053 dans le forum Shell et commandes GNU
    Réponses: 5
    Dernier message: 31/07/2011, 22h35
  2. Réponses: 5
    Dernier message: 23/12/2007, 15h12
  3. [VBA]Stocker le nom d'une variable dans une autre variable
    Par strike57 dans le forum VBA Access
    Réponses: 6
    Dernier message: 23/04/2007, 19h09
  4. le nom d'un variable dans un autre variable
    Par rootdaoud dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 03/05/2006, 11h04
  5. [VBS] appel d'un script VBS dans un autre script VBS???
    Par Amandine62 dans le forum VBScript
    Réponses: 9
    Dernier message: 31/01/2006, 18h17

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