Bonjour à tous,
Je souhaite exécuter un script shell au travers d'un page html en lui passant bien entendu les paramètres correspondant aux champs saisis.
Pour ce faire je passe par l'intermédiaire d'un script perl.
En simplifiant complètement le détail des différents scripts, ça donne ceci :
Voici l'appel du script perl dans le script html :
Voici le contenu du script test.ksh :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 <form method='POST' enctype='multipart/form-data' action='/cgi-bin/toto.pl'> Voici le contenu de toto.pl : #!/usr/bin/perl require 5.003; use strict; use Shell; require "./cgi-lib.pl"; MAIN: { my %cgi_data; my $lpid = $$; my $local_dir = "/tmp"; my $filename = "test.ksh"; my $application = "toto"; my $module = $cgi_data{'module'}; my $version = $cgi_data{'version'}; my $valid_script = $local_dir . "/" . $filename; my @args = ($valid_script, $application, $module, $version); system @args; }
Comment dois-je m'y prendre pour visualiser la page test.html via le script perl ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 #!/bin/ksh my_application=$1 my_module=$2 my_version=$3 echo "<html><head><title>Résultat du script test.ksh </title></head><body>">/tmp/test.html echo "<tr><td>${my_application}</tr></td>">>/tmp/test.html echo "<tr><td>${my_module}</tr></td>">>/tmp/test.html echo "<tr><td>${my_version}</tr></td>">>/tmp/test.html echo "</body></html>">>/tmp/test.html
Ai-je adopté la bonne méthode pour obtenir ce résultat ?
Merci de vous lire.
Cdlt ;-)
Partager