Opgave

In het bestand secret.txt1 werd een geheime boodschap verborgen. Elke regel van dit bestand bevat een bitstring (een tekenreeks die enkel bestaat uit enen en nullen) van 16 karakters lang, gevolgd door een spatie en één enkel woord van willekeurige lengte, dat dus verder geen spaties meer bevat. Volg de onderstaande aanwijzingen op om deze boodschap te kunnen ontcijferen.

  1. Bepaal reguliere expressies voor elk van de onderstaande verzamelingen, waarbij $$\mathcal{B}$$ de verzameling van alle bitstrings voorstelt. Probeer deze reguliere expressies zo kort mogelijk te houden.

    • $$ A = \{ x \in \mathcal{B}\,|\,$$ de eerste bit van $$x$$ is verschillend van de laatste bit $$\}$$

    • $$ B = \{ x \in \mathcal{B}\,|\,$$ het aantal nullen in $$x$$ is een veelvoud van 5 $$\}$$

      opmerking: nul is deelbaar door 5

    • $$ C = \{ x \in \mathcal{B}\,|\,$$ enen komen in $$x$$ steeds in paren voor $$\}$$

    Gebruik het egrep commando om enkel die regels van het bestand secret.txt2 te selecteren met een bitstring die tot een opgegeven verzameling behoren.

  2. Beschouw de verzamelingen A, B en C zoals hierboven gedefinieerd.Het raadsel kan dan op de volgende manier worden opgelost:

    • Het eerste woord wordt gevonden op de unieke regel met de bitstring uit de verzameling A $$\cap$$ B.

    • Het tweede woord wordt gevonden op de unieke regel met de bitstring uit de verzameling A $$\cap$$ C.

    • Het derde woord wordt gevonden op de unieke regel met de bitstring uit de verzameling B $$\cap$$ C.

    Geef telkens een Unix commando dat elk van deze woorden opzoekt in het bestand en uitschrijft naar standaard uitvoer (zonder het patroon dat aan het woord voorafgaat). Hierbij is het dus niet toegelaten om het woord letterlijk uit te schrijven (bv. echo xxx).