03
Metodyka i Techniki Programowania
UNIX ‐ Strumienie, potoki, edytory
dr inż. Andrzej Głowacz
2007‐10‐15
Ć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.