Metodyka i Techniki Programowania

2007‐10‐15

03 UNIX ‐ Strumienie, potoki, edytory

dr inż. Andrzej Głowacz

Ćwiczenie 1 Praca ze strumieniami

1. Uruchom polecenie drukowania na wyjście cat i zaobserwuj efekty jego działania. Wyjście z programu za pomocą kombinacji CTRL+D.

2. Przy pomocy operatora przekierowania wyjścia > utwórz plik o nazwie test1.txt. Zapisz w nim swoje imię i nazwisko. W pliku test2.txt zapisz swój login.

3. Wypisz zawartość pliku test1.txt.

4. Wypisz zawartość pliku test2.txt.

5. Połącz pliki test1.txt i test2.txt tworząc wynikowy plik test3.txt. Wyświetl zawartość pliku test3.txt. Do czyszczenia ekranu może przydać się polecenie clear.

6. Sprawdź różnice pomiędzy działaniem operatorów > i >>.

7. Dopisz do pliku aktualną datę.

8. Sprawdź, czym różnią się polecenia echo i cat.

9. Sprawdź do czego służą polecenia banner, cal, calendar, i dopisz efekty ich działania do pliku test3.txt.

10. Wypisz zawartość pliku test4.txt. Zauważ jaki jest komunikat błędu. Spróbuj przekierować komunikat o błędzie do pliku err.txt.

11. Spróbuj przekierować zawartość pliku test.txt do pliku /dev/null. Po wykonaniu operacji, sprawdź

zawartość pliku /dev/null.

12. Sprawdź do czego służy polecenie sleep. Jak użyć tego polecenia do zapisania w pliku dwóch dat, różniących się o ustaloną liczbę sekund?

Ćwiczenie 2 Praca z potokami

1. Wypisz zawartość plików /etc/passwd i /etc/group.

2. Zapoznaj się z poleceniem more.

3. Użyj operatora | aby przekierować zawartość plików do programu more.

4. Wyświetl plik /etc/passwd z podziałem na strony przyjmując, że strona ma 5 linii tekstu.

5. Sprawdź, czym różnią się polecenia more i less.

6. Spróbuj przekierować zawartość plików do programu sort i zaobserwuj efekty.

7. Sprawdź, do czego służą polecenia head i tail. Jak przy pomocy tych poleceń można wypisać rekordy od 3

do 5 z każdego pliku?

8. Policz znaki, słowa i linie w plikach /etc/passwd i /etc/group. Możesz skorzystać z polecenia wc.

Ćwiczenie 3 Wyszukiwanie w tekstach

1. Sprawdź działanie polecenia cut. Jak użyć tego polecenia do wypisania aktualnego dnia miesiąca?

2. Za pomocą operatora przekierowania i programu grep znajdź wpisy w plikach, które odpowiadają za Twój login i grupę.

3. Przy pomocy programu awk znajdź wpisy w plikach, które odpowiadają za Twój login i grupę.

4. Wiedząc, że $ nr zwraca w języku awk kolumnę o numerze nr, jak wypisać aktualną godzinę?

5. Jak przy pomocy języka awk można wyświetlić swoje imię i nazwisko zapisane w systemie UNIX, jeśli jesteśmy zalogowani w systemie? Przyjmij, że „zapomniałeś” swój login.

Ćwiczenie 4 Edytory

1. W Twoim systemie Knoppix i na serwerze student sprawdź dostępność edytorów vi/vim, pico/nano, joe, mcedit. Poćwicz wpisywanie tekstu w edytorze vi. Spróbuj na własny użytek napisać, w formie podręcznika, listę poleceń vi, które uważasz za niezbędne do edycji pliku.