[perl] exécution d un script unix particulier

fxta -  
lami20j Messages postés 21331 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   -
Salut,

je possede un script sh qui fait une requete en sqlplus, pour lancer ce script la main je tape :

. script.sh
(point espace script.sh) Sinon celui ci ne fonctionne pas.

Malheureusement perl ne comprend pas le . [espace] j'ai l'impression.

que ce soit en ssh :
my $CMD = "cd /tmp;. script.sh;" ;


ou en commande system :
my $sh = `. script.sh`; 

system(". script.sh");


Si quelqu un a une astuce ?

Bonne journée
A voir également:

15 réponses

swoog42 Messages postés 1060 Date d'inscription   Statut Membre Dernière intervention   244
 
essaye de lancer ton script ainsi :
./script.sh
0
fxta
 
Ca ne fonctionne pas non plus

cannot execute
0
swoog42 Messages postés 1060 Date d'inscription   Statut Membre Dernière intervention   244
 
et si tu lance avec le chemin absolu ?
0
fxta
 
meme message, je pense que je suis obliger de le lancer avec
. script.sh
ou alors trouver une commande qui joue le meme role que ce . [espace] .

(d ailleurs je sais pas a quoi ca corespond . [espace] ^^)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
swoog42 Messages postés 1060 Date d'inscription   Statut Membre Dernière intervention   244
 
désolé, je ne suis jamais tombé sur ce cas de figure, je passe la main.
0
fxta
 
Pas de souci.

Merci quand meme.
0
lami20j Messages postés 21331 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 570
 
Salut,

Essaie
system("sh script.sh");

ou

system(".", "script.sh");



ou

system("sh","script.sh");
--
106485010510997108
0
fxta
 
Nice
system("sh script.sh");
fonctionne bien.

j'en ai trouvé un autre qui fonctionne bien:
<code>system(". /tmp/script.sh");

Merci bien.

Juste un ptit pb , quelles sont les commandes a taper pour charger les variables d'environnement lors d une connexion ssh?
0
fxta
 
Desole j'ai répondu trop vite..... ca trouve le script (c est deja ca) ca le lance, mais l'exécution se passe tres mal...
0
fxta
 
Bon je pense que je vais faire mon script en full perl ca évitera des pbs.

Par contre comment faire pour charger les variables d'environnement d'un utilisateur?
0
lami20j Messages postés 21331 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 570
 
Re,

Bon je pense que je vais faire mon script en full perl ca évitera des pbs.
Oui.

Par contre comment faire pour charger les variables d'environnement d'un utilisateur?
Tu veux changer quoi exactement?
0
fxta
 
fichier liste.tmp:
bob
tom
tim


un bout du script:
for i in `cat /tmp/liste.tmp`
do
export ENV1=$i
. bin $i


je vois pas comment traduire :
export ENV1=$i
. bin $i
en perl.
0
lami20j Messages postés 21331 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 570
 
Re,

Ca te sers à quoi ces noms ?
bob, tom, tim


Peut être que tu es sur une mauvaise piste.
0
fxtaa Messages postés 1050 Date d'inscription   Statut Membre Dernière intervention   74
 
J'ai voulu simplifier et censurer le script mais je pense plutot avoir raté mon coup.

Possibilité de passer par MP ?
0
lami20j Messages postés 21331 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 570
 
Re,

Pour les questions d'ordre général non. Il faut que la communauté profite des échanges, pour plusieurs raisons :
- partage (le but de CCM)
- peut être qu'il y a d'autres idées

Pour les données privées oui tu peux passer par MP, mais le code éventuel sera écrit dans le forum (les données privées ne seront pas divulguées

0