Uebung

Description of your first forum.
davidvajda
Site Admin
Beiträge: 66
Registriert: Mo Feb 06, 2023 5:13 pm

Uebung

Beitrag von davidvajda »

Code: Alles auswählen

#!/bin/bash 

case $1 in
    Hallo)
            echo "Hallo sagt David Vajda"
        ;;
    Super)
            echo "Das findet David Vajda auch"
        ;;
    Tschuess)
            echo "Auf Wiedersehen"
        ;;
esac
davidvajda
Site Admin
Beiträge: 66
Registriert: Mo Feb 06, 2023 5:13 pm

Re: Uebung

Beitrag von davidvajda »

Code: Alles auswählen

#!/bin/bash 
#
# myserver: initscript
#
### BEGIN INIT INFO
# Provides: /home/david/bash2023/test0001.sh
# Required-Start: 
# Required-Stop: 
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Description: Ein 
# Short-Description: Ein Test
### END INIT INFO

case $1 in
    start)
                start-stop-daemon --start --exec /home/david/bash2023/test0001.sh
        ;;
    stop)
                start-stop-daemon --stop /home/david/bash2023/test0001.sh
                rm /home/david/bash2023/test0001.txt
        ;;
    restart|reload)
                start-stop-daemon --start --exec /home/david/bash2023/test0001.sh
                start-stop-daemon --stop /home/david/bash2023/test0001.sh
        ;;
esac

exit 0

Code: Alles auswählen

#!/bin/bash 

echo "Hallo Welt sage ich" > /home/david/bash2023/test0001.txt

Code: Alles auswählen

root@www3:/home/david/bash2023# cp myserver0001.sh /etc/init.d/myserver0001 
root@www3:/home/david/bash2023# update-rc.d myserver0001 defaults
insserv: warning: current start runlevel(s) (1 2 3 4 5) of script `myserver0001' overrides LSB defaults (2 3 4 5).
insserv: warning: current stop runlevel(s) (1) of script `myserver0001' overrides LSB defaults (0 1 6).
root@www3:/home/david/bash2023# update-rc.d myserver0001 enable
insserv: warning: current start runlevel(s) (1 2 3 4 5) of script `myserver0001' overrides LSB defaults (2 3 4 5).
insserv: warning: current stop runlevel(s) (1) of script `myserver0001' overrides LSB defaults (0 1 6).
Failed to enable unit: Unit /run/systemd/generator.late/myserver0001.service is transient or generated.
davidvajda
Site Admin
Beiträge: 66
Registriert: Mo Feb 06, 2023 5:13 pm

Re: Uebung

Beitrag von davidvajda »

Code: Alles auswählen

  GNU nano 3.2                                              while.sh                                                        

#!/bin/bash

i=0

while [ $i -lt 10 ]
do 
        echo "Hallo zum $(($i+1))."
        i=$(($i+1))
done


Code: Alles auswählen

david@www3:~/bash2023/0001$ /bin/bash while.sh 
Hallo zum 1.
Hallo zum 2.
Hallo zum 3.
Hallo zum 4.
Hallo zum 5.
Hallo zum 6.
Hallo zum 7.
Hallo zum 8.
Hallo zum 9.
Hallo zum 10.
davidvajda
Site Admin
Beiträge: 66
Registriert: Mo Feb 06, 2023 5:13 pm

Re: Uebung

Beitrag von davidvajda »

Code: Alles auswählen

#!/bin/bash 

l=$(ls -a)

for s in $l
do 
        echo "$s"
done 
davidvajda
Site Admin
Beiträge: 66
Registriert: Mo Feb 06, 2023 5:13 pm

Re: Uebung

Beitrag von davidvajda »

Code: Alles auswählen

#!/bin/bash

a=(Hallo sagt David Vajda)
a+=(Aber dies auch)

i=0

while [ $i -lt 7 ]
do 
        echo "${a[$i]}"
        i=$(($i+1))
done

for s in ${a[*]}
do
        echo "$s"
done



Code: Alles auswählen

david@www3:~/bash2023/0001$ /bin/bash array.sh 
Hallo
sagt
David
Vajda
Aber
dies
auch
Hallo
sagt
David
Vajda
Aber
dies
auch
davidvajda
Site Admin
Beiträge: 66
Registriert: Mo Feb 06, 2023 5:13 pm

Re: Uebung

Beitrag von davidvajda »

Code: Alles auswählen

#!/bin/bash 

a=(Hallo Welt sagt David Vajda)

for s in ${a[@]}
do 
        echo "$s"
done

Code: Alles auswählen

david@www3:~/bash2023/0001$ /bin/bash for.sh
Hallo
Welt
sagt
David
Vajda
davidvajda
Site Admin
Beiträge: 66
Registriert: Mo Feb 06, 2023 5:13 pm

Re: Uebung

Beitrag von davidvajda »

Code: Alles auswählen

#!/bin/bash 

name=$1

echo "Ihr Name ist $name"

if [ "$name" == "David Vajda" ]
then
        echo "Das bin ich "
elif [ "$name" == "Linus Torvalds" ]
then
        echo "Das ist ein Chef bei Linux"
elif [ "$name" == "Sara Nunu" ]
then
        echo "Mit Strickweltmeistern kenne ich mich nicht so aus"
else
        echo "I don't know"
fi

davidvajda
Site Admin
Beiträge: 66
Registriert: Mo Feb 06, 2023 5:13 pm

Re: Uebung

Beitrag von davidvajda »

Code: Alles auswählen

#!/bin/bash 

l=$(ls)

for s in $l
do
	echo "$s"
	if [ "$s" == "ifthenelse.sh" ]
	then
		echo "David Vajda" | /bin/bash "$s" >> out.txt
		echo "Linus Torvalds" | /bin/bash "$s" >> out.txt
		echo "Sara Nunu" | /bin/bash "$s" >> out.txt
		echo "Max Mustermann" | /bin/bash "$s" >> out.txt
	elif [ "$s" == "io.sh" ]
	then
		echo "David Vajda" | /bin/bash "$s" >> out.txt
	elif [ "$s" == "execall.sh" ]
	then
		echo "Hallo"
	elif [ "$s" == "out.txt" ]
	then
		echo "Hallo"
	elif [ "$s" == "ifthenelse2.sh" ]
	then
		/bin/bash "$s" "David Vajda" >> out.txt
		/bin/bash "$s" "Linus Torvalds" >> out.txt
		/bin/bash "$s" "Sara Nunu" >> out.txt
		/bin/bash "$s" "Max Mustermann" >> out.txt
	else
		/bin/bash "$s" >> out.txt
	fi
done

Code: Alles auswählen

Hallo
sagt
David
Vajda
Aber
dies
auch
Hallo
sagt
David
Vajda
Aber
dies
auch
.
..
array.sh
cmd.sh
execall.sh
for.sh
hallowelt.sh
ifthenelse2.sh
ifthenelse.sh
io.sh
out.txt
while.sh
Hallo
Welt
sagt
David
Vajda
Hallo Welt
Ihr Name ist David Vajda
Das bin ich 
Ihr Name ist Linus Torvalds
Das ist ein Chef bei Linux
Ihr Name ist Sara Nunu
Mit Strickweltmeistern kenne ich mich nicht so aus
Ihr Name ist Max Mustermann
I don't know
Ihr Name ist David Vajda
Das bin ich 
Ihr Name ist Linus Torvalds
Das ist ein Chef bei Linux
Ihr Name ist Sara Nunu
Mit Strickweltmeistern kenne ich mich nicht so aus
Ihr Name ist Max Mustermann
I don't know
David Vajda
Hallo zum 1.
Hallo zum 2.
Hallo zum 3.
Hallo zum 4.
Hallo zum 5.
Hallo zum 6.
Hallo zum 7.
Hallo zum 8.
Hallo zum 9.
Hallo zum 10.
davidvajda
Site Admin
Beiträge: 66
Registriert: Mo Feb 06, 2023 5:13 pm

Re: Uebung

Beitrag von davidvajda »

Code: Alles auswählen

<?php 
include ("/home/david/db_settings.php");

$db = new PDO ("mysql: host=localhost", $MYSQL_USER, $MYSQL_PASSWORD);

$sql = "CREATE DATABASE test0001" . $rnd = (rand () % 8192);
$db->query ($sql);

$sql = "USE test0001" . $rnd;
$db->query ($sql);

$sql = "CREATE TABLE a (x1 INTEGER, x2 INTEGER); CREATE TABLE b (y1 INTEGER, y2 INTEGER)";
$db->query ($sql);

$sql = "INSERT INTO a (x1, x2) VALUES (0, 0); INSERT INTO a (x1, x2) VALUES (0, 1); INSERT INTO a (x1, x2) VALUES (1, 0); INSERT INTO a (x1, x2) VALUES (1, 1); INSERT INTO a (x1, x2) VALUES (2, 7); INSERT INTO b (y1, y2) VALUES (0, 1); INSERT INTO b (y1, y2) VALUES (1, 0); INSERT INTO b (y1, y2) VALUES (2, 7)";
$db->query ($sql);

$sql = "SELECT x1, x2 FROM a";
$stmt = $db->query ($sql);
while ($row = $stmt->fetch ())
    echo $row [0] . " " . $row [1] . "<br>\n";
echo "<br><br>\n\n";

$sql = "SELECT * FROM b";
$stmt = $db->query ($sql);
while ($row = $stmt->fetch ())
    echo $row [0] . " " . $row [1] . "<br>\n";
echo "<br><br>\n\n";

$sql = "SELECT x1, x2, y1, y2 FROM a INNER JOIN b ON a.x1 = b.y1";
$stmt = $db->query ($sql);
while ($row = $stmt->fetch ())
    echo $row [0] . " " . $row [1] . " " . $row [2] . " " . $row [3] .  "<br>\n";
echo "<br><br>\n\n";


$db = null;
?>

Code: Alles auswählen

0 0<br>
0 1<br>
1 0<br>
1 1<br>
2 7<br>
<br><br>

0 1<br>
1 0<br>
2 7<br>
<br><br>

0 0 0 1<br>
0 1 0 1<br>
1 0 1 0<br>
1 1 1 0<br>
2 7 2 7<br>
<br><br>

davidvajda
Site Admin
Beiträge: 66
Registriert: Mo Feb 06, 2023 5:13 pm

Re: Uebung

Beitrag von davidvajda »

Code: Alles auswählen

<?php 
session_start ();
?>

<form method="POST" action="http://localhost/test/0005/form0001.php">
<input type="password" name="p01"></input>
<input type="submit">
</form>

<?php 
echo session_id () . "<br>\n";

setcookie ("c01", "c01", time () + 3600);
echo htmlentities ($_POST ["p01"]) . "<br>\n";
echo htmlentities ($_COOKIE ["c01"]) . "<br>\n";
echo htmlentities ($_COOKIE ["c01a"]) . "<br>\n";

session_destroy ();
?>

Code: Alles auswählen

POST http://localhost/test/0005/form0001.php HTTP/1.1
host: localhost 
Cookie: c01a=Hallo Dies ist Cookie
Content-Length: 9
Content-Type: application/x-www-form-urlencoded

p01=Hallo

Code: Alles auswählen

Trying ::1...
Connected to localhost.
Escape character is '^]'.
HTTP/1.1 200 OK
Date: Wed, 15 Mar 2023 18:27:07 GMT
Server: Apache/2.4.38 (Debian)
Set-Cookie: PHPSESSID=tb4h1q6grc9p9kqmkuh2q39buh; path=/
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate
Pragma: no-cache
Set-Cookie: c01=c01; expires=Wed, 15-Mar-2023 19:27:07 GMT; Max-Age=3600
Vary: Accept-Encoding
Content-Length: 217
Content-Type: text/html; charset=UTF-8


<form method="POST" action="http://localhost/test/0005/form0001.php">
<input type="password" name="p01"></input>
<input type="submit">
</form>

tb4h1q6grc9p9kqmkuh2q39buh<br>
Hallo<br>
<br>
Hallo Dies ist Cookie<br>
Antworten