To jest stara wersja strony!


Pisanie skryptów Bash

Ćwiczenie 1. Słownik krzyżówkowy

  • (1 pkt.) Proszę napisać skrypt, który dla słowa podanego jako argument, w którym dowolne znaki wstawiamy jako “.”, wyświetli znalezione dopasowania ze słownika.
    np. dla: ./skrypt b.eb.. znalezionym dopasowaniem mogłoby być bieber.
  • (1 pkt.) W przypadku, gdy nie podamy słowa, skrypt powinien wypisać komunikat “Nie podano słowa”.
  • (1 pkt.) W przypadku, gdy nie podamy słowa, skrypt powinien ponadto poprosić użytkownika o wprowadzenie słowa i pobrać od niego to słowo.
  • (1 pkt.) Skrypt powinien sprawdzać, czy pobrane słowo nie zawiera niedozwolonych znaków.
  • (1 pkt.) Odgadnij hasło i sprawdź je przy użyciu /tmp/checkpassword. Listę haseł do sprawdzenia można wysłać np. przy użyciu:
    cat dictionary.txt | /tmp/checkpassword.
    Podpowiedź do hasła: Kończy sie na „us”, ma 7 liter, nie zaczyna się na literę z pierwszej połowy alfabetu, a nazwę kojarzy każdy, kto był w Hong Kongu.

Ćwiczenie 2. Deszyfrator szyfru przestawieniowego

  • (1 pkt.) Napisz skrypt, który odszyfruje wiadomość zaszyfrowaną ROT13:
wrqan m plse cvah gb fvrqrz
  • (1 pkt.) Napisz skrypt, który odszyfruje wiadomość zaszyfrowaną analogicznym szyfrem przestawieniowym, ale z inną liczbą przesunięcia. Skrypt powinien odgadnąć liczbę automatycznie, na podstawie tego, czy słowa z wiadomości występują w słowniku.
kdzmrnuz xuozmt xtamt kdip ovfdz nvhz v fjgzeiz oj kmuznpidęxdz gdozm r oze rdvyjhjśxd
  • (1 pkt.) Odgadnij pin – sprawdź jego poprawność programem /tmp/checkpin np. echo 12345 | /tmp/checkpin.

Ćwiczenie 3. Kreator krzyżówek

  • (1 pkt.) Proszę napisać skrypt, który wylosuje dowolne hasło ze słownika.
  • (1 pkt.) Skrypt powinien losować hasło tak długo, aż znajdzie hasło nie krótsze niż 8 liter, przy czym losowanie hasła powinno odbywać się w osobnej funkcji.
  • (1 pkt.) Dla ustalonego hasła skrypt następnie losuje hasła dodatkowe zaczynające się od każdej z liter hasła głównego.
  • Przykład: dla hasła głównego “kawa”, program może wylosować hasła dodatkowe:
|k|orniszon
|a|rtefakt
|w|oda
|a|zymut
  • (1 pkt.) Skrypt po podaniu opcji “–print” lub “-p” wypisuje pustą krzyżówkę (ascii art jak poniżej) oraz opisy do haseł, a “–solved” lub “-s” wypisuje krzyżówkę wypełnioną.

|_|_|_|_|_|_|_|_|_|
|_|_|_|_|_|_|_|_|
|_|_|_|_|_ _ 
|_|_|_|_|_|_|

Dodatkowe materiały

W pliku /tmp/dictionary.txt znajduje się słownik anglojęzyczny.
W pliku /tmp/slownikpl.txt znajduje się słownik polskojęzyczny.
W pliku /tmp/krzyzowkowe.txt znajdują się hasła krzyżówkowe z opisem.

pl/dydaktyka/unix/lab_skrypty_adv.1479716042.txt.gz · ostatnio zmienione: 2019/06/27 15:55 (edycja zewnętrzna)
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0