sudo apt-get update;
sudo apt-get install libdbi-perl
use DBI;
sudo apt-get install -y libnet-sftp-foreign-perl
use Net::SFTP::Foreign;
sudo apt-get install -y libnet-openssh-perl
use Net::OpenSSH;
sudo apt-get install libdbd-mysql-perl
use strict;
use warnings;
use v5.10;
use feature qw( switch );
no if $] >= 5.018, warnings => qw( experimental::smartmatch );
use DBI;
use Net::DNS::Resolver;
use Net::SFTP::Foreign;
use Net::OpenSSH;
my $var = "[value]";
my $var = [value];
my @array
$array[0] = "[string-value]"
$array[1] = [numeric-value]
my %[hash-var] = (["key1"],["String-Value"], ["key2"],[Numeric-Value], ["key3"],[Value], ... );
Oder:
my %[hash-var] = ([key1] => [value], [key1] => [value] ... );
say $[hash-var]{['key1']}
say $[hash-var]{['key2']}}
Bsp.:
my %myHash = ("Name","Jana","Alter",23,"Ort","Berlin");
say $myHash{'Name'}, " ist ", $myHash{'Alter'}, " Jahre alt und wohnt in ", $myHash{'Ort'};
Out: Jana ist 23 Jahre alt und wohnt in Berlin
while (($[key-var],$[val-var]) = each(%[hash-var])) {
print "Key: " . $[key-var] . " Value: " . $[val-var] . "\n";
}
Bsp.:
my %myHash = (Name => "Jana", Alter => 23, Ort => "Berlin");
while (($key,$value) = each(%myHash)) {
$key . " : " . $value . "\n";
}
Out:
Name : Jana
Alter : 23
Ort : Berlin
$[hash]{[key]} = [value]
Bsp.:
$myHash{Beruf} = "Tieraerztin";
$[hash]{[key]}
Bsp.:
say $myHash{Beruf}
Out:
Beruf : Tieraerztin
sub [funktionName] {
# Code...
}
Aufruf: [funktionName]();
sub [funktionName] {
my $var1 = shift;
my $var2 = shift;
# Code...
}
Aufruf: [funktionName]([param1], [param2]);
sub [funktionName] {
return [returnvalue];
# Code...
}
Aufruf: $retVal = [funktionName]();
my $dsn = "dbi:mysql:[db-name]:"."[host-ip]".":3306";
# MySql port is usually: 3306
my $username = "[name]";
my $password = "[password]";
my $dbh = DBI->connect($dsn, $user, $password);
Backticks oder qx//
... in aktuellmen Prozess mit Rückgabewert
$var = `[cmd]`;
print $var;
oder:
$var = qx/[cmd] [arg] [...]/;
print $var;
System
... in neuem 'child' Prozess ohne Rückgabewert
system( "[cmd] arg1 arg2" );
oder:
system( "[cmd]", "arg1", "arg2" );