The Perl and Raku Conference 2025: Greenville, South Carolina - June 27-29 Learn more

#!/usr/bin/perl
eval 'exec /usr/bin/perl -S $0 ${1+"$@"}'
if 0; # not running under some shell
eval 'exec /usr/bin/perl -S $0 ${1+"$@"}'
if 0; # not running under some shell
eval 'exec /usr/bin/perl -S $0 ${1+"$@"}'
if 0; # not running under some shell
eval 'exec /usr/bin/perl -S $0 ${1+"$@"}'
if 0; # not running under some shell
eval 'exec /usr/bin/perl -S $0 ${1+"$@"}'
if 0; # not running under some shell
### OPEN SOURCE LICENSE - GNU AFFERO PUBLIC LICENSE Version 3.0 #######
#
# Net::FullAuto - Distributed Workload Automation Software
# Copyright © 2000-2021 Brian M. Kelly
#
# This program is free software: you can redistribute it and/or
# modify it under the terms of the GNU Affero General Public License
# as published by the Free Software Foundation, either version 3 of
# the License, or any later version.
#
# This program is distributed in the hope that it will be useful,
# but **WITHOUT ANY WARRANTY**; without even the implied warranty
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public
# License along with this program. If not, see:
#
#######################################################################
use strict;
BEGIN {
my $edit=0;my $earg='';my $cnt=-1;
my $VERSION=0;my $version=0;my $tutorial=0;
our $planarg=0;our $cronarg=0;my $admin=0;
my $users=0;my $cat=0;my $carg='';my $figlet=0;
foreach my $arg (@ARGV) {
$cnt++;
if ($arg=~/^--ed*i*t*$/) {
$edit=1;
if ($ARGV[$cnt+1] && $ARGV[$cnt+1]!~/^--/) {
$earg=$ARGV[$cnt+1];last;
} else { last }
} elsif ($arg=~/^-[a-df-zA-Z]*e\s*(.*)/) {
$earg=$1;
$edit=1;
chomp $earg;
$earg='' if $earg=~/^\s*$/;
} elsif ($arg=~/^--cat$/) {
$cat=1;
if ($ARGV[$cnt+1]!~/^--/) {
$carg=$ARGV[$cnt+1];
last;
} else { last }
} elsif ($arg=~/^-[a-df-zA-UW-Z]*V/ ||
$arg=~/^--VE*R*S*I*O*N*$/) {
$VERSION=1;
} elsif ($arg=~/^-[a-df-uw-zA-Z]*v/ ||
$arg=~/^--ve*r*s*i*o*n*$/) {
$version=1;
} elsif ($arg=~/^--about$/) {
$version=1;
} elsif ($arg=~/^--plan$/) {
$planarg=1;
} elsif ($arg=~/^--cron$/) {
$cronarg=1;
} elsif ($arg=~/^--tutorial$/) {
$tutorial=1;
} elsif ($arg=~/^--users$/) {
$users=1;
} elsif ($arg=~/^--admin$/) {
$admin=1;
} elsif ($arg=~/^--figlet$/) {
$figlet=1;
}
}
if ($edit) {
&Net::FullAuto::FA_Core::edit($earg);
exit;
} elsif ($cat) {
&Net::FullAuto::FA_Core::cat($carg);
exit;
} elsif ($VERSION) {
&Net::FullAuto::FA_Core::VERSION();
exit;
} elsif ($version) {
&Net::FullAuto::FA_Core::version();
exit;
} elsif ($tutorial) {
&Net::FullAuto::FA_Core::tutorial();
exit;
} elsif ($users) {
&Net::FullAuto::FA_Core::users();
exit;
} elsif ($admin) {
$Net::FullAuto::FA_Core::admin_menu->();
exit;
} elsif ($figlet) {
&Net::FullAuto::FA_Core::figlet();
exit;
}
# our $fa_custom_code='fa_code.pm';
# our $fa_menu_config='fa_menu.pm';
}
fa_login;