mogbo
Banned
Hallo,
hab mir ein recht simples Script für das Starten und Beenden von VPNs gemacht.
Sämtliche *.ovpn Dateien liegen in /etc/openvpn
Mein Problem ist jetzt bei der Ausführung, dass wenn ich den if ($input > 0) Teil ausführe, bekomm ich die Fehlermeldung: sh syntax error `;' unexpected . Ich kann jedoch den Fehler nicht finden. Könnte vlt mal ein zweites Auge drüber schauen, bin am Verzweifeln
Schönheitsfehler und Sonstiges können auch gerne bemängelt werden, hab leider niemanden der mich kritisieren könnte
hab mir ein recht simples Script für das Starten und Beenden von VPNs gemacht.
Sämtliche *.ovpn Dateien liegen in /etc/openvpn
Mein Problem ist jetzt bei der Ausführung, dass wenn ich den if ($input > 0) Teil ausführe, bekomm ich die Fehlermeldung: sh syntax error `;' unexpected . Ich kann jedoch den Fehler nicht finden. Könnte vlt mal ein zweites Auge drüber schauen, bin am Verzweifeln
Code:
#!/usr/bin/env perl
use strict;
use warnings;
use utf8;
my @ls_out;
my $count = 0;
my $zaehler;
my $anzahl;
my $input;
my $path = "/etc/openvpn";
@ls_out = `ls $path | perl -lane 'print if /.ovpn/'`;
$anzahl = @ls_out;
print "0.) Kill openvpn and change /etc/resolv.conf\n";
while ( $anzahl > $count )
{
$zaehler = $count + 1;
print "$zaehler.) $ls_out[$count]";
$count += 1;
}
print "Choose: \n";
chomp( $input = <STDIN> );
if ( $input > 0 )
{
$input -= 1;
system("doas sh -c 'openvpn --config $path/$ls_out[$input]; echo $ls_out[$input] > /tmp/vpn_connection; chown root:wheel /tmp/vpn_connection; chmod 440 /tmp/vpn_connection'");
}
else
{
system("doas sh -c 'pkill openvpn; echo \"nameserver 127.0.0.1\" > /etc/resolv.conf'");
}
Schönheitsfehler und Sonstiges können auch gerne bemängelt werden, hab leider niemanden der mich kritisieren könnte