Vielen Dank Nepos,
ich habe nun folgendes Script:
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
#!/usr/bin/perl
use strict;
use warnings;
use CGI qw/:standard/;
# Neues CGI-Objekt, mit dem du Parameter auslesen kanns, HTTP-Header und HTML
# ausgeben kannst
my $query = CGI->new();
# Header ausgeben
print $query->header();
my $variable_value = $query->param('variable');
# ACHTUNG: Nachdem du den Wert der Variable in ein Shell-Skript weitergibst,
# solltest du unbedingt prüfen, dass da kein Mist drinsteht. Da ich nicht weiss,
# welche Werte denn in dieser Variablen stehen dürfen, kann ich dir dafür keinen
# Check vorgeben!!!
open my $pipe, '|-', '/etc/test.sh' or die $!;
{
local $SIG{PIPE} = 'IGNORE';
print $pipe "$variable" or die $!;
}
close $pipe or die $?;
Bei Ausführung im Browser bekomme ich nur einen allgemeinen Perl-Fehler zum Download angeboten. Bei lokaler Ausführung mittels
bekomme ich den Fehler:
Global symbol "$variable" requires explicit package name at mario.cgi line 23.
Execution of mario.cgi aborted due to compilation errors.
In beiden Fällen habe ich keine Möglichkeit, die Eingabe für den Variablenwert zu machen.
Für weitere Hilfe bin ich dankbar.
Mario