mirror of
https://gitlab.com/harald.mueller/aktuelle.kurse.git
synced 2024-11-28 04:31:56 +01:00
116 lines
2.6 KiB
Markdown
116 lines
2.6 KiB
Markdown
::: center
|
|
::: huge
|
|
:::
|
|
|
|
::: center
|
|
::: Large
|
|
Linux Bash\
|
|
Übung Prüfungsvorbereitung
|
|
:::
|
|
:::
|
|
:::
|
|
|
|
::: scriptsize
|
|
::: center
|
|
Mario Bischof
|
|
:::
|
|
:::
|
|
|
|
**Aufgaben:**
|
|
|
|
> **a)** - Was macht folgende Zeile?
|
|
>
|
|
> ifconfig | grep "Ether" -c
|
|
>
|
|
> **b)** - Was macht folgende Zeile?
|
|
>
|
|
> tar -vczf backup.tar.gz /root/
|
|
>
|
|
> **c)** - Füllen sie eine Datei `namen.txt` mit folgendem Inhalt
|
|
>
|
|
> Otto
|
|
> Peter
|
|
> Martin
|
|
> Christian
|
|
> Andrea
|
|
> Otto
|
|
> Martin
|
|
> Peter
|
|
> Bob
|
|
>
|
|
> Was macht folgender Befehl?
|
|
>
|
|
> cat namen.txt | sort -u
|
|
>
|
|
> **d)** - Formulieren sie einen Befehl, welcher aus der Datei
|
|
> `/etc/passwd` alle Heimverzeichnisse ausschneidet und in einer Datei
|
|
> `homes.txt` speichert\
|
|
> \
|
|
> **e)** - Formulieren sie eine for-schleife, welche durch die Zahlen 1
|
|
> bis 10 läuft und das Produkt der Zahlen mit sich selbst ausgibt\
|
|
> \
|
|
> **f)** - Wie oft laufen folgende cronjobs?
|
|
>
|
|
> */10 * * * * <befehl>
|
|
> 5 8 * * 0 <befehl>
|
|
> 0 10 1 * * <befehl>
|
|
>
|
|
> **g)** - Was macht folgendes Skript?
|
|
>
|
|
> #!/bin/bash
|
|
> for i in $( ifconfig | grep "inet Adr" | grep -v "127.0.0.1" |
|
|
> cut -d ":" -f 2 | cut -d "." -f 1-3 ); do
|
|
> for k in $(seq 1 255); do
|
|
> fping -c 1 -t250 $i.$k 2>&1 | grep " 0% " | cut -d " " -f 1 >> ips.txt
|
|
> done
|
|
> done
|
|
>
|
|
> **h)** - Was macht folgender Befehl?
|
|
>
|
|
> fping -g -c 1 -t250 172.16.6.0/24 2>&1 | grep " 0% " | cut -d " " -f 1 > ips.txt
|
|
>
|
|
> **i)** - Was macht folgender Befehl?
|
|
>
|
|
> find / -user otto -iname "*bash*" -exec cp {} /data/otto/ \;
|
|
>
|
|
> **j)** - Was machen folgende Befehle?
|
|
>
|
|
> for ip in $(seq 200 254);do echo 192.168.13.$ip; done > ips.txt
|
|
> for ip in $(cat ips.txt);do dig -x $ip | grep $ip >> dns.txt; done
|
|
|
|
**Lösungen:**
|
|
|
|
> **a)** - Zählt wie oft der Begriff *ether* in der Ausgabe von grep
|
|
> vorkommt.\
|
|
> \
|
|
> **b)** - Komprimiert und archiviert den Inhalt des Ordners `/root/` in
|
|
> der Datei `backup.tar.gz`\
|
|
> \
|
|
> **c)** - Gibt die Begriffe in alphabetischer Reihenfolge ohne
|
|
> Duplikate aus\
|
|
> \
|
|
> **d)** -
|
|
>
|
|
> cat /etc/passwd | cut -d ':' -f 6 > homes.txt
|
|
>
|
|
> **e)** -
|
|
>
|
|
> for z in {1..10};do echo $((z*z)); done
|
|
>
|
|
> **f)**
|
|
>
|
|
> - Alle 10 Minuten
|
|
> - Sonntags um 8:05 Uhr
|
|
> - An jedem 1.Tag im Monat um 10:00 Uhr
|
|
>
|
|
> **g)** - Beispiellösung zur Ping-sweep Aufgabe\
|
|
> \
|
|
> **h)** - Vereinfachung des Ping-sweeps mit `-g`\
|
|
> \
|
|
> **i)** - Findet alle Dateien von user `otto` mit dem Begriff bash im
|
|
> Namen und kopiert diese nach `/data/otto`.\
|
|
> \
|
|
> **j)** - 1. Zeile: generiert IPs (24er Netz 192.168.13.x) und
|
|
> speichert diese in `ips.txt`, 2.Zeile macht einen reverse DNS-lookup
|
|
> zu jeder IP in `ips.txt`
|