Aufgaben Bash while: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
 
(8 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
 
= Aufgabe 1 =
 
= Aufgabe 1 =
−
 
 
* Programmieren Sie einen Counter der hochzählt.
 
* Programmieren Sie einen Counter der hochzählt.
−
 
 
= Aufgabe 2 =
 
= Aufgabe 2 =
−
 
+
;Tip verwenden der Modulo ist oft sinnvoll
 
* Programmieren Sie einen Counter der hochzählt und nur ungerade Zahlen ausgibt.
 
* Programmieren Sie einen Counter der hochzählt und nur ungerade Zahlen ausgibt.
  
 
= Aufgabe 3 =
 
= Aufgabe 3 =
−
 
 
* Erstellen Sie ein Programm welches die Datei /etc/passwd einliest und die Felder in umgekehrter Reihenfolge ausgibt.
 
* Erstellen Sie ein Programm welches die Datei /etc/passwd einliest und die Felder in umgekehrter Reihenfolge ausgibt.
−
 
+
<!-- <syntaxhighlight lang=bash> -->
−
<syntaxhighlight lang=bash>
+
<!-- #!/bin/bash -->
−
#!/bin/bash
+
<!-- while read l -->
−
 
+
<!-- do -->
−
while read l
+
<!-- echo $l | awk -F ":" '{print $7":"$6":"$5":"$4":"$3":"$2":"$1}' -->
−
do
+
<!-- done < /etc/passwd -->
−
 
+
<!-- </syntaxhighlight> -->
−
echo $l | awk -F ":" '{print $7":"$6":"$5":"$4":"$3":"$2":"$1}'
+
=Aufgabe 4 =
−
 
+
*[[ldif Datei erzeugen]]
−
done < /etc/passwd
+
<!--
−
</syntaxhighlight>
+
= Aufgabe 5 =
−
 
 
−
= Aufgabe 4 =
 
−
 
 
 
* Erstellen Sie dasselbe Programm unter Verwendung von '''awk'''
 
* Erstellen Sie dasselbe Programm unter Verwendung von '''awk'''
 
* '''awk''' soll dabei nie explizit die Anzahl der Felder gesagt bekommen, da es in der awk-Variable ''NF'' (Number of Fields) vorhanden ist
 
* '''awk''' soll dabei nie explizit die Anzahl der Felder gesagt bekommen, da es in der awk-Variable ''NF'' (Number of Fields) vorhanden ist
 +
-->
 +
<!-- <syntaxhighlight lang=bash> -->
 +
<!-- #!/bin/bash -->
 +
<!-- while read l -->
 +
<!-- do -->
 +
<!-- echo $l | awk -F ":" '{ -->
 +
<!-- i = NF -->
 +
<!-- while (i > 0) { -->
 +
<!-- printf $i":" -->
 +
<!-- i-- -->
 +
<!-- } -->
 +
<!-- printf "\n" -->
 +
<!-- }' -->
 +
<!-- done < /etc/passwd -->
 +
<!-- </syntaxhighlight> -->
  
−
<syntaxhighlight lang=bash>
+
= Aufgabe 5 =
−
 
+
*[[User anlegen]]
−
#!/bin/bash
 
−
 
 
−
while read l
 
−
do
 
−
 
 
−
echo $l | awk -F ":" '{
 
−
i = NF
 
−
while (i > 0) {
 
−
printf $i":"
 
−
i--
 
−
}
 
−
printf "\n"
 
−
}'
 
−
 
 
−
done < /etc/passwd
 
−
</syntaxhighlight>
 

Aktuelle Version vom 7. Juni 2023, 09:49 Uhr

Aufgabe 1

  • Programmieren Sie einen Counter der hochzählt.

Aufgabe 2

Tip verwenden der Modulo ist oft sinnvoll
  • Programmieren Sie einen Counter der hochzählt und nur ungerade Zahlen ausgibt.

Aufgabe 3

  • Erstellen Sie ein Programm welches die Datei /etc/passwd einliest und die Felder in umgekehrter Reihenfolge ausgibt.

Aufgabe 4

Aufgabe 5