Edytor w systemach unixowych to vim, używamy gdy chcemy wpisać jakieś dane do pliku

Wielkość: px
Rozpocząć pokaz od strony:

Download "Edytor w systemach unixowych to vim, używamy gdy chcemy wpisać jakieś dane do pliku"

Transkrypt

1 Manipulacja strukturą plików i katalogów w systemie linux. pwd - wpisujemy, by się przekonać w jakim katalogu jesteśmy i będziemy mieć /home/students/user i to jest tak, że wszystko jest podkatalogiem katalogu głównego root i każdy plik czy katalog dostępny w systemie jest elementem takiego drzewa z korzeniem root, dlatego jest ten pierwszy ukośnik przed home i w katalogu home znajdują się katalogi domowe użytkowników, czyli takie katalogi, w których znajdują się użytkownicy po zalogowaniu, tam są jego pliki, które tam umieścił itp. U nas w katalogu home jest podkatalog students. ls wyświetli nam całą zawartość katalogu w którym się obecnie znajdujemy ls -a wyświetli wszystkie pliki, czyli też ukryte ls -l włącza długi format wyświetlania, czyli będą też szczegóły dotyczące pliku Działają połączenia typu ls -al, wtedy w każdej linii na początku będzie literka d lub minus, pierwsza wersja będzie oznaczała, że to plik w podkatalogu, a minus, że to jest plik zwykły cd - wchodzimy do katalogu mkdir tworzymy katalog cd.. to wejdziemy do katalogu wyżej (pamiętać o spacji!) touch nazwa_pliku to data ostatniej modyfikacji zmieni się na aktualną, jeśli wpiszemy jako nazwę plik, który nie istnieje to zostanie w katalogu stworzony plik zwykły o podanej nazwie o długości zero bajtów touch plik ls -l mkdir [przełączniki] nazwa_katalogu tworzenie katalogów, np.: mkdir./xyz utworzenie katalogu xyz w katalogu bieżącym; mkdir../xyz utworzenie katalogu xyz w katalogu bezpośrednio nadrzędnym. rmdir [przełączniki] nazwa_katalogu usuwanie katalogów, np.: rmdir ~/xyz usunięcie katalogu xyz z katalogu domowego; rmdir./xyz usunięcie katalogu xyz z katalogu bieżącego. Dla poleceń rmdir i mkdir dostępny jest m.in. przełącznik -p, który pozwala odpowiednio, usuwać i tworzyć struktury katalogów, np.: rmdir -p abc/def/ghi usunie katalogi ghi, def oraz abc, które tworzyły hierarchię. Edytor w systemach unixowych to vim, używamy gdy chcemy wpisać jakieś dane do pliku zapoznać się z obsługa tego edytora Naciśnięcie dwukropka to przejście do stanu poleceń wierszowych :r nazwapliku i to insert i wpisujemy jak kończymy edycje to esc i w ten sposób wrócimy do trybu wydawania poleceń klawiszowych naciskamy : i znów tryb wierszowych potem wq czyli write i quit :w! pliczek to nadpisze lub stworzy jeśli plik istnieje :q wychodzimy z edytora jedziemy ls -l by zobaczyć, czy się faktycznie zmienił rozmiar pliku wyświetlić zawartość pliku na ekranie polecenie cat nazwa pliku vim /etc/passwd i tu znajduje się lista wszystkich użytkowników, którzy posiadają konta w tym systemie z pewnymi informacjami o tym użytkowniku i szukamy info o nas w tym celu naciskamy :/whiteros i nas znajdzie, bo samo / to polecenie wyszukania teraz chcemy zamienić wszystkie wystąpienia słowa bash w pliku na crash w tym celu najpierw przechodzimy na początek pliku pageup-em i wpisuję Ćwiczenia z systemów operacyjnych 1

2 :s/bash/crash/g (s jest od zamień, a /g powoduje znalezienie wszystkich) :1$s/bash/crash/g i dwa entery i teraz esc i potem :q to edytor nam nie da wyjść, bo nie zapisaliśmy naszych zmian chyba ze nie chcemy zapisywać wtedy :q! Echo man jak manual czyli podręcznik użytkownika man echo q by opuścić manuala echo wypisuje nam tekst vim i #!/bin/bash mówi ta linia tyle, że za każdym razem jak będę chciała wykonać ten plik to ma on uruchomić program który zinterpretuje komendy dalej występujące i piszemy echo to jest mój program, będzie o tym dalej pewnie koło strony 20 : by przejść znów w tryb wydawania poleceń wierszowych :w prog czyli wydajemy polecenie by zapisać plik jako prog :q pamiętać jak skończymy pisać po echo to esc chmod +x prog zmienia uprawnienia do pliku cat prog oznacza aktualny katalog /prog i enter czyli uruchom plik o nazwie prog z aktualnego katalogu i się te polecenia wykonają. Podsumowując, musimy zapamiętać, że w systemie linux jest edytor tekstowy vim, którego używamy do komponowania plików tekstowych. Ponadto pliki tekstowe mogą zawierać komendy przeznaczone do wykonywana kolejno i takie pliki z zestawem komend możemy wykonywać. Najpierw nauczymy się podstawowych poleceń systemu linux i potem będziemy komponować zestawy poleceń, skrypty, które wykonane kolejno będą wykonywały zadania. Pamiętać o man, jeśli nie pamiętamy jaką czynność dane polecenie wykonuje, lub nie pamiętamy, jakie opcje możemy użyć cp [przełączniki] nazwa_pliku nowa_nazwa_lub_katalog kopiowanie pliku określonego przez pierwszy argument pod nazwę lub do katalogu określonego drugim argumentem, np.: cp abc.txt xyz.txt kopiuje plik abc.txt pod nową nazwę xyz.txt w katalogu bieżącym; cp /tmp/abc.txt ~ kopiuje plik abc.txt z katalogu /tmp do katalogu domowego użytkownika; cp abc.txt ~/xyz.txt kopiuje plik abc.txt z katalogu bieżącego pod nową nazwę xyz.txt w katalogu domowym użytkownika. Przydatnym przełącznikiem polecenia cp jest przełącznik -r, który służy do kopiowania całych struktur katalogów. rm [przełączniki] lista_plików usuwanie plików podanych jako argumenty wywołania, np.: rm abc.txt xyz.txt usuwa pliki abc.txt i xyz.txt w katalogu bieżącym; rm /tmp/abc.txt usuwa plik abc.txt z katalogu /tmp; Przydatnym przełącznikiem polecenia rm jest przełącznik -r, który służy do usuwania całych struktur katalogów. mv [przełączniki] nazwa_pliku nowa_nazwa zmiana nazwy pliku określonego pierwszym argumentem wywołania na nazwę określoną drugim argumentem wywołania. Jeśli drugi argument wywołania jest katalogiem, to wówczas plik zostanie przeniesiony do tego katalogu, np.: mv abc.txt xyz.txt zmiana nazwy pliku abc.txt na nazwę xyz.txt w katalogu bieżącym; mv /tmp/abc.txt ~ przeniesienie pliku abc.txt z katalogu /tmp do katalogu domowego użytkownika Ćwiczenia z systemów operacyjnych 2

3 Ćwiczenia 2 Przypomnijmy, ze wszystko jest podkatalogiem katalogu root, czyli jest tylko jeden katalog główny i każdy nowy jest podpinany pod tą strukturę cd / to znajdziemy się w katalogu głównym root i wtedy np ls i wyświetli zawartość katalogu root, jak chce wiedzieć o co chodzi z tymi katalogami to man 7 hier i będzie do czego służą poszczególne katalogi. cd nazwa_katalogu to wejdę do tego katalogu to katalog aktualny, cd. to się nic nie stanie, bo jesteśmy w katalogu aktualnym. to katalog nadrzędny wobec tego w którym się znajdujemy pwd pokazuje nam gdzie jesteśmy, jeśli pokaże / to znaczy, że jesteśmy w katalogu głównym root ~ to katalog domowy aktualnie zalogowanego użytkownika, wiec cd ~ to wejdziemy do naszego katalogu w którym już tworzyliśmy pliki sobie, możemy je wyświetlić ls. Jak nie pamiętamy parametrów to możemy napisać np man ls i potem /-R i wyszuka. Okazuje się, że jest to polecenie wykonywane rekursywnie, czyli wykonywane jest polecenie ls na wszystkich plikach tego katalogu spróbujmy np. ls -alr ~ i wyświetli nam nie tylko zawartość katalogu domowego ale też zawartości katalogów które się w tym katalogu znajdują mkdir nazwa_nowego_katalogu tworzenie nowego katalogu w naszym katalogu domowym rmdir katalog - usuwanie katalogu tworzenie pliku - otwieramy edytor i zapisujemy zawartość do pliku, lub touch nazwa cp plik_zrodlowy plik_docelowy kopiowanie zawartości plików, jeśli plik docelowy nie istnieje to go stworzy i umieści w nim tą samą zawartość jaka jest w pliku źródłowym mv plik_zodlowy plik_docelowy - przenoszenie pliku, wtedy plik docelowy będzie stworzony, umieści w nim zawartość źródłowego, a potem usunie źródłowy rm kasuje plik mv pliczek katalog to przeniesie nam plikczek do katalogu rmdir jak chcemy skasować katalog to skasujemy tylko pusty katalog, a skoro u nas jest juz pliczek to musimy napisać rm z odpowiednimi rzeczami wtedy skasujemy katalog z plikiem rm -r katalog to usunę katalog z zawartością, znowu podejście rekursywne, możemy rm -fr katalog to nie będziemy też o nic pytani echo * to wyświetli listę plików i katalogów w aktualnym katalogu * jako znak specjalny jest różnie interpretowana echo *.txt to wyświetli te pliki, które mają rozszerzenie txt w bieżącym katalogu Jak chcemy wyświetlić znak specjalny to np echo "*" albo echo \* ale druga wersja tylko jak mam dokładnie jeden znak do wyświetlenia find gdzie_szukamy czego_szukamy przeszuka podkatalogi można szukać zaawansowanie czyli np wykorzystując kryterium czasu, opisane w pdf-ie z wazniaka. W systemach unixowych katalog też jest nazywany plikiem find ~ -exec polecenie {} \; find ~ -type f -name "*.txt" f oznacza plik zwykły, więc chodzi o to, że to plik a nie katalog daliśmy "" by to find zinterpretowało *.txt a nie interpreter, czyli wyświetlam plik z mojego katalogu, który jest plikiem a nie katalogiem i o nazwie "*.txt". Ćwiczenia z systemów operacyjnych 3

4 Jeśli bym wpisała bez to by wyświetlił tylko to co znalazł w katalogu głównym, a z wyświetli też to co jest w podkatalogach. {} to kolejna znaleziona przez find pozycja exec zawsze kończymy \; find ~ -type f -name "*.txt" -exec cat {} \; cat wyswietla zawartość danego pliku echo pawel ma psa > plik1.txt i wtedy sposób to polecenie zostanie wykonane nie na ekranie tylko na pliku plik1.txt czyli wpisze ten tekst do naszego pliku. find ~ -type f -name "*.txt" -print -exec cat {} \; -print wyświetli znalezione pozycje, bo bez tego z samym exec I cat by nam tylko wyświetlił zawartość tego co znalazł, ale nie widzielibyśmy samych ścieżek. Uprawnienia r do odczytu w do zapisu x executive czyli do wykonywania te uprawnienia nadajemy userowi, grupie wszyscy_inni ls -l o zobaczymy te uprawnienia dla katalgow: r to wypisanie wszystkich elementów jakie się znajdują w katalogu w to stworzenie nowej lub usuniecie startej pozycji w katalogu x dla katalogu to wykonywanie katalogu czyli przechodzenie przez katalog np. możemy wejść do katalogu, zrobić cd tylko jak mamy to uprawnienie chmod zmienia uprawnienia chmod uprawnienia które mają być nadane lub odebrane plik_ktorego_to_dotyczy możemy pisać chmod +r plik to zostaną dodane uprawnienia odczytu dla wszystkich 3 grupek chmod -w plik chmod g-x plik grupie chmod a-x plik wszystkim chmod u-x plik użytkownikowi odbieramy prawy do wykonywania chmod o-x plik others jak chcę mieć r-x r to jadę z tym binarnie czyli na nasze 540 można też chmod 540 plik chmod 777 plik to wszystkim pozwoli na wszystko Ćwiczenia 3 Dowiązania są twarde i miękkie. Twarde dowiązanie jest wtedy gdy w katalogu dwie nazwy nazwa1 i nazwa2 wskazują na ten sam i-węzeł. Czyli bez względu czy odczytuje nazwa1 czy nazwa2 to i tak odczytam ten sam obszar na dysku, zmodyfikuje ten sam obszar, bo jest ten sam i-węzeł. Dowiązanie symboliczne to bardziej jak skrót w systemie Windows. Mamy katalog pierwsza nazwa w nim wskazuje na jeden i1-węzeł, druga nazwa na jakiś drugi i2-węzeł, ale w tym i2-węźle jest przekierowanie do i1-węzła. Każda pozycja w katalogu ma ilość dowiązań. Ćwiczenia z systemów operacyjnych 4

5 Różnica dla użytkownika jest żadna, ale dla systemu jest bo jeśli w pierwszym przypadku skasuję nazwa1, to nazwa2 będzie nadal funkcjonalnym plikiem odnoszącym się do i-węzła. Natomiast w drugim wypadku jeśli skasuję nazwa1, to nazwa2 straci swoja funkcjonalność bo wraz z nazwa1 się skasuje i1 węzeł. ln - tworzę dowiązanie twarde ln -s - tworzenie dowiązań miękkich, symbolicznych Dowiązanie może być do dowolnego pliku, a do katalogu użytkownik może tworzyć tylko dowiązania miękkie, twardych nie ma możliwości. touch plik11 vim plik11 wciskamy insert 3 cw z sys operacyjnych wychodzimy ln cel nazwa czyli u nas ln plik11 nazwadowiazania ls -l i po uprawnieniach widzę dowiązania cat plik11 nazwadowiazania i wyjdzie mi dwa razy to samo tworzymy link symboliczny do plik11 ln -s plik11 dowiazanies ls -l pojawi sie kolejny plik i będzie miał różny, rozmiar niż plik11 czy nazwadowiazania, licznik dowiązań twardych do tego pliku wynosi 1, ponadto jeśli odwołamy sie do dowiazanies to powinniśmy znów zobaczyć ten sam tekst z mojego plik11 teraz usuwam rm plik11 ls -l to widzimy ze ten plik zniknął ze sie zmienił licznik dowiązań w nazwadwiazania cat nazwadowiazania sie uda cat dowiazanies juz sie nie uda, będzie komunikat o błędzie Dowiązania twarde do katalogów istnieją mimo, że nie możemy ich robić ls -la (razem z ukrytymi) są dwa dowiązania do katalogu - jedno to sam ten katalog a drugie to cos z podkatalogami, bo chodzi o to, że jak mamy katalog i podkatalog to ten podkatalog ma dwa dowiązania twarde - jedno na samego siebie a drugie na katalog nadrzędny (plecenie..)choć tu wersja prowadzącego się zmieniała, chyba katalog które nie mają podkatalogów to mają liczbę dowiązań dwa a inne mają 2+liczba podkatalogów, na tej wersji stanęło ls i dodaje przy wyświetlaniu jeszcze numer i-węzła W domciu przetestować tworzenie linków do pliku dla polecenia ls istnieje parametr i, który powoduje, że na początku pozycji odpowiadającej poszczególnym plikom jest dodawany numer i-wezla i sprawdzić ze faktycznie te dowiązania działają tak jak się spodziewamy sprawdzić nr i wezla nowego katalogu, stworzyć tam podkatalog i sprawdzić, że w tym podlatalogu bedzie pozycja.. której odpowiadający nr i-wezla będzie ten sam co nr i-węzła katalogu nadrzędnego ls ila zadania 8-17 i z wazaniaka Id identyfikator oraz grupy do których należę Ćwiczenia z systemów operacyjnych 5

6 Każdy użytkownik systemu operacyjnego może także sprawdzić jaki identyfikator numeryczny id został mu przydzielony należy wówczas zastosować polecenie: id którego wynik może być następujący: uid=1500(adam) gid=100(students) groups=100(students) gdzie uid (ang. user identifier) oznacza identyfikator użytkownika, w nawiasie znajduje się jego nazwa, gid (ang. group identifier) oznacza identyfikator grupy każdy użytkownik należy do pewnej grupy, tzw. grupy podstawowej (dla powyższego przykładu jest to grupa o identyfikatorze 100 i nazwie students), dodatkowo każdy użytkownik może należeć do innych grup, są one wymienione po słowie groups. Finger- (alternatywa: who) pokaże mi wszystkie osoby zalogowane do systemu w danej chwili, tyle że finger pokaże też imię i nazwisko a who tylko nick mkdir kat1 cd kat1 Zad 9. W katalogu kat1 utwórz jednym poleceniem strukturę katalogów kat2/kat3/kat4. mkdir -p kat2/kat3/kat4 bo wtedy będzie robił tak by to były podkatalogi, rodzice itp cd kat2 Zad 10. Usuń jednym poleceniem cała strukturę katalogów kat3/kat4. rmdir -p kat3/kat4 czyli usunie kat4 i jego rodzica czyli u mnie kat3 lub można też rm r kat3 o dziwo efekt będzie ten sam touch plik.txt touch plik.c Zad 12. Skopiuj jednym poleceniem wszystkie pliki z katalogu domowego z rozszerzeniem.txt do katalogu kat1. cp *.txt kat1 skopiuje wszystko z rozszerzeniem txt z miejsca w którym jesteśmy do katalogu kat1, TU NIE WOLNO NAPISAĆ Z Zad 13. Skopiuj jednym poleceniem wszystkie pliki z katalogu domowego z rozszerzeniem.c do katalogu kat2. cp *.c kat1/kat2 Zad 14. Skopiuj całą strukturę katalogów kat1 tworząc analogiczną strukturę o nazwie kat1b. cp -r kat1 kat1b skopiuje rekursywnie czyli wraz z cala struktura to co jest jako kat1 do katalogu o nazwie kat1b Ćwiczenia z systemów operacyjnych 6

7 Zad 15 Usuń wszystkie plik z katalogu kat1/kat2. rm kat1/kat2/* lepiej zrobić samo * (a nie *.*), bo tak to usuwam tylko te pliki, które mają kropkę w nazwie Zad 16. Usuń jednym poleceniem całą strukturę katalogów kat1b. rm -r kat1b z niezrozumiałych przyczyn mimo wszystko usunie ten katalog pomimo tego, że to polecenie jest od plików przecież usunie go rekursywnie czyli wraz z całą jego zawartością Zad 17 Zmień nazwę dowolnego pliku w katalogu kat1. mv plik1.txt pl1.txt - zmiana nazwy plik1.txt na pl1.txt Zad 18 Przenieś katalog kat1/kat2 do katalogu domowego tworząc w ten sposób katalog kat2b. Uwaga twórczość własna: Najpierw przenosze czyli np. wchodze do kat1 i piszę: Mv kat2 ~ Potem wchodze do mojego katalogu czyli Cd.. i mv kat2 kat2b Można to zapisać w jednej linijce po średnikach i też będzie działać ;D Zad 21 Korzystając z programu find znajdź wszystkie pliki, które posiadają w nazwie słowo mozilla i znajdują się w podkatalogach katalogu /usr. find /usr -type f -name "*mozilla*" pamiętać koniecznie o tych "" by ta * była interpretowana przez find a nie przez interpreter poleceń. Zad 22. Korzystając z programu find znajdź wszystkie katalogi o nazwie bin, które znajdują się w katalogu /usr. find /usr -type d -name bin Zad 23 Skopiuj wszystkie pliki zwykłe o rozmiarze pomiędzy 10 a 100 bajtów z katalogu /usr/bin do katalogu kat1/kat2 (wykorzystaj polecenie find z parametrem -exec). -exec na każdej znalezionej pozycji on zrobi to co napiszemy po spacji czyli -exec cp {} kat1 \; znalezioną pozycję skopiuj do kat1 find /usr/bin/ koniecznie ten drugi ukośnik!!! find usr/bin/ -type f -size +10 -size exec cp {} ~/kat1/kat2 \; ostrożnie tutaj ze spacjami! chmod g+w plik.txt dodaje prawo zapisu dla grupy do pliku plik.txt w katalogu bieżącym Ćwiczenia z systemów operacyjnych 7

8 ls -l plik.txt sprawdzam, czy dobrze wyszło chmod 644 plik1.txt to ustawi tak jak było na początku tj 110 (czyli 6), 100 (stąd jest 4) i znów 100. Zad 30 Utwórz dowiązanie symboliczne do katalogu kat1/kat2 o nazwie abc w katalogu domowym. Jestem w katalogu ~ i piszę twórczość własną ;> Ln s kat1/kat2 abc Bez trudu mogę sprawdzić, że to faktycznie działa, wystarczy włączyć potem ls kat1/kat2 oraz ls abc. Ćwiczenia 4 Na proces składa się obraz pliku wykonywanego. Init to proces systemowy pierwszy proces i ten proces uruchamia inne procesy, a te mogą też uruchamiać proces pstree - wyświetla drzewo procesów w systemie środowisko procesu - zestaw zmiennych, które użytkownik może ustawić, a proces z nich korzystać np modyfikować swoje działanie w zależności od tych zmiennych standardowy strumień wyjścia to oczywiście konsola - wypisanie danych na ekranie, a wejścia to klawiatura, czyli program wczytuje dane od użytkownika z klawiatury. ps - wyświetla procesy aktualnie działające w systemie, posiada dużo parametrów, domyślnie wyświetla dwa procesy - samego siebie i program bash - interpreter poleceń ps -f - rozszerzy informacje o procesach, wtedy będzie PPID i będzie ładnie widać, że PS jest uruchomiony przez Bash - nr PPID ps jest nr PID bash-a. ps f - kreseczka, forma drzewa... ps fx to zobaczymy jeszcze proces sshd, to jest serwer, który na nasze życzenie uruchamia sam siebie...i basha Usuwanie procesu Użytkownik który uruchomił proces może wysyłać sygnały do procesu i może go zabić poleceniem kill. kill -s sygnal KILL pid - s jest od sygnał, a zamiast słowa sygnał możemy napisać np KILL pid uruchomiamy polecenie cat, gdy uruchomiliśmy tylko je(w sensie piszemy cat i naciskamy enter), to ono odczytuje standardowe wejście - klawiaturę i wszystko co odczyta to wypisze na ekran, sprawdźmy ctrl + d to będzie oznaczało, że plik z którego odczytywaliśmy się skończył, ale nie wciskamy tego bo nie chcemy zakończyć tego procesu tylko go zastopować czyli naciskamy: ctrl + z powoduje wysłanie do aktualnie działającego pierwszoplanowego procesu sygnału stop teraz ps fx to zobaczymy ze proces bash uruchomił proces ps i proces cat Odczytujemy PID procesu cat i piszemy kill -s KILL nr_pid Ćwiczenia z systemów operacyjnych 8

9 Priorytety procesu Im dłużej proces działa tym ma niższy priorytet. Użytkownik nie ma bezpośredniej możliwości zabawy tym, ale możemy ustawiać liczbę nice, która przydaje się do obliczania procesu, Im mniejsza wartość liczby nice tym wyższy priorytet procesu nice Zarządzanie procesami & wymusza uruchomienie przez interpreter poleceń procesu w tle sleep 20s - polecenie sleep będzie czekało 20s i potem dopiero przerwie swoje działanie, przez ten czas nie wykonamy żadnej komendy jobs fg - pierwszy plan bg - tło uruchamiamy znów cat ctrl+z (zatrzymujemy proces), czyli cat będzie w bg a bash w fg jobs fg - jak nie podamy argumentu i działa tylko jedno polecenie czyli u nas cat to on je wsadzi na główny plan ctrl +d by skończyć nice find / - czyli uruchamiamy z większym priorytetem polecenie find by wypisywał wszystkie pliki jakie znajdzie w systemie ctrl+z - zawieszamy teraz chcemy wznowić ten proces, ale by nie był na pierwszym planie fs fx kill -s CONT PID - wysyłamy sygnał kontynuacji poleceniem kill wtedy będzie kłopot, znów dużo info na ekranie, a ctrl+z go nie zatrzyma, bo ten sygnał idzie do pierwszoplanowego więc logujemy się raz jeszcze wtedy klikamy ps fx i w ten drugiej konsoli go zabijamy ale ładniej: kill -s TERM pid - nie pójdzie, jeśli proces się zakończy vim ctrl +z kill -s CONT pid wtedy będzie tak dziwnie, ze zatrzyma pracę, bo on wymaga pełnej interakcji z użytkownikiem kill -s KILL pid Status zakończenia procesu Proces może zwrócić kod zakończenia procesu: 0 jeśli zakończył się poprawne lub co innego jeśli błędnie, kod ostatnio zakończonego procesu można wyświetlić: echo $? - wartość zmiennej znak zapytania ls beee/ i potem echo to nie będzie zera bo ls nie zadziałał bo u nas nie ma folderu bleee polecenie_pierwsze && polecenie_drugie to interpreter zrozumie to tak: wykona pierwsze polecenie i jeśli kod błędu zwrócony przez nie będzie równe 0, to uruchomi polecenie drugie polecenie1 polecenie2 - uruchomi się pierwsze, gdy pierwsze zwróci NIEzerowy kod błędy to uruchomi się polecenie 2. polecenie1 ; polecenie2 - uruchomi się pierwsze a potem bezwarunkowo drugie polecenie mkdir A ls A/ - wyświetl zawartość katalogu A ls A/ && echo udalo sie - u nas sie uda ;) ls AB/ && echo udalo sie echo nie udalo sie = u nas nie ma AB wiec wyświetli sie nie udalo się ls AB/ echo nie udalo sie && echo udalo sie = czyli zamieniliśmy kolejność, wtedy pojawiły się oba komunikaty, to logiczne ;) nawias pozwala grupować polecenia do wykonania Ćwiczenia z systemów operacyjnych 9

10 polecenie1 && (polecneie2; polecenie3) ` znak który znajduje sie na klawiszu z tyldą, polecenie1 `polecenie2` wtedy interpreter wykona polecenie 2 najpierw, wyniki działania polecenie 2 (wszystko wyrzucone na ekran) zostanie wstawione w miejsce polecenia2 np date pokaze nam aktualna echo dzis jest `date` polecenie1 > plik wtedy to co polecenie1 wyrzuca na ekran wyrzuci do pliku date > plik cat plik echo date > polecenie Można zagnieżdżać, ale wtedy muszę mieć \ przed wewnętrznym odwróconym apostrofem np: echo dzis jest `\`cat polecenie\`` echo dzis jest $(date) - to inny sposób zagnieżdżania test - sprawdzi nam to co będziemy kazali np data ostatniej modyfikacji pliku, albo skonstruujemy warunki dotyczące liczb całkowitych itp. test ustawia tez kod błędu 0 jak warunek jest spełniony i 1 jak nie jest... test 5 -lt 8 (less then) echo $? -f sprawdza warunek czy to co jest podane po parametrze -f istnieje i jest plikiem zwykłym test -f plik && cat plik expr wyświetli wynik tego dodawania expr 5 '*' 3 bo * jest znakiem specjalnym expr 5 \* 3 cat /proc/sys/net/ipv4/ip_forward to miejsce które pokazuje czy ten komp jest ruterem cos takiego... -eq od equal czy jest równe test `cat /proc/sys/net/ipv4/ip_forward` -eq 1 && echo "jestes routerem" echo "nie jestes" -nt is newer Ćwiczenia 5 Zad1. Wyświetl nowszy plik spośród plików /etc/hosts, /etc/resolv.conf test plik1 -nt plik2 - jeśli pierwszy plik faktycznie będzie nowszy, to polecenie test zwróci kod błędu zero - oznaczenie że wszystko ok test plik1 -nt plik2 && cat plik1 cat plik2 ls -l /etc/hosts by sprawdzić, jak to wygląda dla tego pliku zad2 Dla ustalonego pliku. Wyświetl plik bądź komunikat, że jest to link symboliczny, a następnie zawartość pliku, do którego ten link wskazuje. Ćwiczenia z systemów operacyjnych 10

11 przypomnijmy, że cat plik to wyświetli plik cat dowiązanie to wyświetli zawartość pliku, do którego jest to dowiązanie test -L plik to sprawdzi czy ten plik istnieje i jest linkiem symbolicznym test -L dowiazanies && echo to jest link symboliczny ; cat dowiazanies (u mnie dowiazanies jest linkiem symbolicznym). Średnik wiąże słabiej, czyli (test...echo..) ; polecenie man bash - opis interpretera poleceń i jak tam wejdziemy to wpisujemy /&& i spacja szukamy Lists - tam będzie opis średników i innych znaków. zad 3 Dla ustalonego pliku. Jeżeli możesz czytać plik (bądź katalog) wyświetl jego zawartość. test -r plik && (test -d plik && ls plik cat plik) czyli najpierw sprawdzam -r czy mamy uprawnienia odczytu, jeśli tak to sprawdzam czy mamy do czynienia z plikiem czy z katalogiem tzn. -d i wyświetlamy odpowiednio ls dla katalogu i cat dla pliku. Nawiasy są sensowne, bo gdyby pierwszy test zwrócił niezerowy kod błędu to i tak byłaby próba wykonania polecenia po Zad 4 Przy założeniu ze w plikach: liczba1 i liczba2 znajdują się dwie liczby całkowite, zapisz do pliku iloczyn wartość ich iloczynu. expr `cat liczba1` \* `cat liczba2` > iloczyn nie trzeba juz tworzyć pliku wynikowego, pamiętać o cytowaniu gwiazdki zad 5 Jak wyżej; przy założeniu że liczba2 jest większa od 0 i nie mniejsza od liczba1, w pliku iloraz zapisz iloraz tych liczb zaokrąglony (w dół) do trzech miejsc po przecinku. echo 0, ; expr `cat liczba1` \* 1000 / $(cat liczba2) `` i $() to jest to samo Mnożymy przez 1000, by otrzymać wartość numeryczną tych naszych trzech miejsc po przecinku, a dlatego jest z echo by wyświetlił odpowiednio ;) Zauważmy, że expr domyśliło się, że ma wykonać dwa działania, ale jak coś można było wsadzić to jeszcze w nawiasy chyba / nie jest po prostu znakiem specjalnym takim jak * echo 0, ; expr \(`cat liczba1` \* 1000 \) / $(cat liczba2) jak zostawimy tą wersję, to echo po tym co napisał dokłada znak nowej linii dlatego piszemy jeszcze -n (echo -n 0, ; expr \( `cat liczba1` \* 1000 \) / $(cat liczba2)) > iloraz uważać, który nawias cytujemy, cytujemy jak potrzeba nam kolejności odpowiedniej, a nie cytujemy gdy ma grupować polecenia. Wypowiedź prowadzącego: Nawiasy nie są cytowany tylko wtedy jezeli mają być rozumiane przez interpreter poleceń jako znaki grupujące listę polecen do wykonania np.: polecenie1 && ( polecenie2 ; polecenie3;... ) Ewentualnie gdy są częscią innego znaku specjalnego interpretera poleceń np.: echo Dzis jest $(date) Nawias nie jest cytowany bo jest częscią znaku specjalnego $(... ) Ćwiczenia z systemów operacyjnych 11

12 Nawiasy zawsze są cytowane jeżeli są argumentem polecenia np.: echo Mama, Tata \(i Ja\) expr \( \) \* 4 Nawias jest w tych przykładach przekazywany programowi echo (expr) i to sam program decyduje co ten nawias dla niego oznacza. Gdyby nie cytowanie interpreter poleceń chciałby wykonywać polecenia: i z argumentem Ja oraz 5 z argumentami + 3 nie robimy początku tego zadania... zad 6 Dla ustalonego pliku. Jeżeli ilość znaków w pliku nie jest podzielna przez 3 zapisz resztę z dzielenia w pliku reszta. Uwaga: przyjmujemy, że ustalony plik ten nie zawiera znaku nowego wiersza. test $(expr \(length "$(cat plik)"\) % 3) -eq 0 expr \( length "$(cat plik)" \) % 3 >reszta cudzysłów jest od tego by spacje rozumiał jako część pliku, by też je liczył wc - word count wc -c plik - to liczy ilosc znaków, bo c to char, ale u nas to nie działało Zad 7 Przy założeniu że liczba2 jest większa od 0 i nie mniejsza od liczba1, w pliku iloraz zapisz iloraz tych liczb zaokrąglony do trzech miejsc po przecinku. Wypowiedź prowadzącego: mnożymy liczbę 1 przez i sprawdzamy czy ostatnia cyfra wyniku jest <6 (reszta z dzielenia przez 10), jeżeli nie dodajemy jeszcze jeden (zaokrąglamy w góre) echo -n 0,; test $(expr \( \( $(cat liczba1) \* \) / $(cat liczba2)\) % 10) - lt 6 && expr \( $(cat liczba1) \* 1000 \) / $(cat liczba2) expr \( $(cat liczba1) \* 1000 \) / $(cat liczba2) + 1 Cwiczenia 6 Zad 8. Wyświetl listę pustych katalogów w katalogu startowym użytkownika. korzystamy z polecenia find, którego struktura byla: find gdzie_szukamy czego_szukamy u nas bedzie: find ~ -type d empty zamiast ~ można pełną ścieżkę tj. find /home/students/whiteros skoro potrzebujemy czegoś pustego, to możemy napisać man find i potem by znaleźć to o co nam chodzi to napiszmy /empty i znajdzie lub /-empty Zad 9. Zapisz komendę, która sprawdzi czy dwa ustalone pliki są swoimi dowiązaniami twardymi. Ćwiczenia z systemów operacyjnych 12

13 Wsk.: ls i, a następnie poleceniem expr możesz wyłuskać potrzebną informację. jak zrobimy ls -i plik.txt, potem ls -i dowiazanie_twarde to otrzymamy te same numery węzłów, a w expr jest cos takiego jak substr - wyciąga początkowy ciąg znaków expr substr pozycja początkowa długość expr substr $(ls -i plik.txt) 1 7 błąd, bo jesli chcemy podać argument który zawiera spacje to musimy wziąć ten argument w " " expr substr "$(ls -i plik.txt)" 1 7 wiec teraz juz tylko np przy pomocy test porównujemy, skoro to są dość duże wartości numeryczne to będziemy porównywać to jako ciągi znaków test $(expr substr "$(ls -i plik.txt)" 1 7) = $(expr substr "$(ls -i dowiaznie_twarde)" 1 7) && echo to jest ten sam plik echo nie sa te same tu nie musi być " " bo zwróci nam numer czyli nie będzie spacji w tym co nam zwróci Mozna to było zrobić prościej man find potem /-samefile find ~ -samefile plik.txt i faktycznie wyświetli nam plik.txt oraz jego dowiązanie twarde bo mają ten sam numer i węzła mozna też tak find ~ -samefile plik.txt -name dowiazanie_twarde i wtedy wyświetli tylko dowizanie_twarde jeśli faktycznie ma on ten sam nr i węzła co plik.txt find ~ -maxdepth 1 -samefile plik.txt -name dowiazanie_twarde argument maxdepth sprawdzi, czy czasem w jakimś głębszym katalogu nie ma tego, o co nam chodzi, gdy ustawimy 1 tak jak w powyższym przykładzie to znaczy, że ma tylko ten katalog sprawdzić, w którym jesteśmy i nie wchodzić głębiej Zad 10. Sporządź kopie zapasowe wszystkich plików z rozszerzeniem.txt w katalogu bieżącym dokładając do nazwy rozszerzenie ".bak". Z. poniżej chodzi o to ze będziemy szukać w katalogu głównym, który przecież znajdujemy jako. find. -maxdepth 1 -name "*.txt" -exec cp {} {}.bak \; czyli mówimy skopiuj kolejną znalezioną pozycję do pliku o tej samej nazwie tylko jeszcze z rozszerzeniem.bak i faktycznie jest wszystko ok Zad 11. Znajdź wszystkie pliki w katalogach ~ oraz /etc/, które mogą być czytane przez wszystkich użytkowników bądź wykonywane przez jakiegokolwiek użytkownika. przypomnijmy, że to szło tak, że jak wpiszemy ls -l Ćwiczenia z systemów operacyjnych 13

14 to pierwszy znak to typ czyli czy to jest file czy folder, potem mamy 3 grupy po 3 bity i albo widzimy to uprawnienie albo go nie ma i mamy -. Pierwsza trojka to user, druga to grup a trzecia to pozostali man find potem /-perm jak nie rozumiem co napisał, to strzałką szukam dalej, może niżej coś jest no czyli mogę mieć -perm upr lub -perm -upr powiedzmy ze chcę rw- r czyli będę miała liczbę 640 -perm -444 zwrócić uwagę tylko na to co ma być ustawione, jeśli będzie cos więcej ustawione to ok -perm /111 tzn. że co najmniej jeden z bitów ustawionych tutaj musi być ustawiony dla którejś z pozycji, czyli pierwsza wersja mówi, że WSZYSTKIE grupy muszą móc czytać i ewentualnie robić coś jeszcze, a druga wersja mówi nam, że przynajmniej jedna z grup musi mieć możliwość wykonywania find ~ /etc -perm or -perm /111 po find wymieniliśmy po prostu te katalogi, które chcemy przeszukać Zad 12. Zapisz w pliku bydlaki listę, postaci nazwa, rozmiar, plików z twojego katalogu domowego o rozmiarze większym niż 100 bajtów. Wsk.: użyj opcji fprintf. find ~ -type f -size +100c +100c to znaczy, że chodzi nam o te większe niż 100bajtów -print powoduje, że nazwa znalezionej pozycji zostanie napisana na ekranie to jest przełącznik polecenia find, jest tez: - fprintf - zapisuje do wskazanego pliku listę znalezionych pozycji, za to odpowiada pierwsze f jak file, a to drugie f oznacza tyle, że ta lista może zostać sformatowana przez żądany przez nas sposób i ten sposób jest opisany przy pomocy printf find ~ -type f -size +100c -fprintf plik format find ~ -type f -size +100c -fprintf bydlaki "%p, %s \n" %p to nazwa %s to rozmiar Zad 13. Zapisz komendę, która wyświetli komunikat: Plik konfiguracyjny serwera www: a następnie wyświetli zawartość pliku /etc/apache2/httpd.conf. Jeżeli taki plik nie istnieje (wystąpi błąd) wyświetli: plik /etc/apache/httpd.conf. Jeżeli taki plik również nie istnieje, wyświetli komunikat Pliku konfiguracyjnego szukaj pośród": i wyświetli listę plików z katalogów /etc/apache i /etc/apache2 zawierających w nazwie ciąg znaków "conf". echo Plik konfiguracyjny serwera www ; jest średnik bo musimy wyświetlić ten komunikat a potem zrobić coś bezwarunkowo dalej w katalogu /etc znajdują się pliki konfiguracyjne. Przyjmujemy, że plik nie istnieje, gdy polecenie cat zwraca kod błędu różny od zera, czyli że nie udaje się go wyświetlić, a jeśli się wszystko nie powiedzie to wyświetlamy pliki z rozszerzeniem conf z tych dwóch katalogów Ćwiczenia z systemów operacyjnych 14

15 echo Plik konfiguracyjny serwera www ; cat /etc/apache2/apache2.conf cat /etc/apache/httpd.conf (echo Plikow konfiguracyjncyh szukaj posrod ; ls /etc/apache/*.conf /etc/apache2/*.conf) po tym co nam wypluł to widzimy, ze nie ma apache w wersji 1 jest tylko w wersji 2. Jest ls pierwszy_katalog drugi_katalog czyli po prostu wypisaliśmy po spacji to co chcemy by było argumentem polecenia ls. Ćwiczenia 7 stdin - to wejście z klawiatury który idzie do procesu stdout - standardowy strumień wyjścia związany z tym co wychodzi z procesu, czyli to co wypluwa na konsolę stderr - standardowy strumień błędów, też ewentualnie wypluwa coś na konsolę Istnieje możliwość przekierowania tych standardowych strumieni danych główne polecenie to cat ono odczytuje kolejną linię ze standardowego wejścia, czyli póki nie naciśniemy enter, a gdy to nastąpi to on wypluje to na ekran. Proces cat będzie tak długo czytał stdin jak długo nie napotka końca pliku co u nas byłoby ctrl D bo najpierw naciskamy cat potem enter i potem wypisujemy Chcemy przekierować te strumienie, już to trochę robiliśmy poprzez ls > plik Ale wtedy jeśli już cos w tym pliku było, to on to skasuje, a NIE dopisze. jest też znak >> np ls / >> plik to mówi o tym ze jeśli plik nie istnieje to zrobi to co zawsze, a jeśli istnieje to nie kasuje tego co było tylko dopisze do tego co juz jest, ls / to wyświetlenie zawartości katalogu głównego Można też przekierować standardowy strumień wejścia. Cat < plik Cat << STOP to będzie czytał tak długo aż napotka to co jest po prawej stronie czyli będzie wczytywał póki nie naciśniemy stop. Mechanizm potoków Jeśli napiszemy polecenie 1 polecenie2 (WAŻNE SPACJE), polecenie pierwsze będzie czytało standardowy strumień wejścia, czyli klawiaturę, a to co jest standardowym strumieniem wyjściowym procesu pierwszego nazywane jest potokiem i to właśnie będzie standardowe wejście dla polecenia 2 i dopiero jego standardowy strumień wyjścia trafi na ekran. Czyli to takie połączenie tych dwóch procesów. Ls R / less Ls R czyli wyświetlamy katalog i zawartości podkatalogów tego katalogu, u nas to katalog główny, less je ładnie uporządkuje, by nam było łatwo je obejrzeć, jest też opcja more, manual z niego korzysta. Ls 1 sort Ls 1 powoduje ze dane są wyświetlane w formacie 1 plik na linię Czyli odczyta kolejne linie ze standardowego wejścia, sortuje i wyświetla Cat /etc/passwd grep Ćwiczenia z systemów operacyjnych 15

16 Powiedzmy, ze chcemy zajrzeć do pliku, gdzie są przechowywane konta użytkowników czyli /etc/passwd Grep odczytuje kolejne linie strumienia wejściowego i wybiera te które pasują do określonego wzorca i zapisujemy w je w postaci wyrażeń regularnych. Jak wpiszemy ciąg znaków to grep znajdzie te linie, które wpiszemy jako argument. Filtry przeczytalismy z wazniaka Cat plik head n 10 Leksykograficznie to znaczy zgodnie z alfabetem Grep Wyrażenie regularne to tego typu co było z * itp. Budujemy je tak: podstawowym znakiem jest kropka i zastępuje ona dowolny znak. Np. k.t to wyrażenie to dopasuje wszystkie linie zawierające taki ciąg znaków(kit, kat, kot). Tu * oznacza już nie dowolny ciąg znaków, tylko powtórzenie dowolną ilość razy wyrażenia, które znajduje się po lewej stronie gwiazdki. Dlatego.* oznacza dowolna ilość znaków bo. oznacza dowolny znak i jest on powtórzony dowolną ilość razy. ^Ala to wyświetla się wszystkie linie zaczynające się od Ala. Kota$ to wyświetlą się wszystkie te które kończą się na kota. [] powoduje, że zostaje dopasowany dowolny znak wymieniony wewnątrz nawiasu np. k[ao]t to do takiego wyrażenia będą pasowały wszystkie linie zawierające ciąg znaków kot albo kat, ale np. kit już nie. K[^ao]t to będzie odwrotnie czyli wszystkie dopasuje poza tymi w nawiasie, czyli już tu kot będzie źle, ale kit będzie ok. () znaczy po prostu do grupowania k(ab)* to do tego będą dopasowane linie kab potem kabab potem kababab itp. Zadania z wazniaka Zadanie 0. Wyświetl plik /etc/passwd z podziałem na strony przyjmując, że strona ma 5 linii tekstu. Twórczość Krzysia: more -5 c /etc/passwd Zadanie 1. Korzystając z polecenia cat utwórz plik tekst3, który będzie składał się z zawartości pliku tekst1, ciągu znaków podanego ze standardowego wejścia (klawiatury) i pliku tekst2. Wyświetliliśmy manuala dla cat to tam jest ze jeśli nie ma argumentu lub jest to znaczy ze jest czytane standardowe wejście więc: Cat plik1 plik2 > plik Przekierowanie standardowego strumienia diagnostycznego Ls R / > plik to komunikaty o charakterze diagnostycznym czyli np. stwierdzenie ze nie mamy do czegoś uprawnień tez będą wyświetlone. Jeśli napiszemy Ls R / PLIK 2> PLIK2 wtedy komunikaty o błędach będą w osobnym pliku, a jeśli nas te komunikaty nie interesują, to możemy wsadzić je do kosza czyli do pliku /dev/null Zadanie 2 Wyświetl po 5 pierwszych linii wszystkich plików w swoim katalogu domowym w taki sposób, aby nie były wyświetlane ich nazwy. Ćwiczenia z systemów operacyjnych 16

17 Head qn 5 *.txt q jest po to by nie wyświetlał nazw. Jak zrobimy z.txt to nic nie wyświetli, bo akurat ja mam takie pliki że w nich nic nie ma. Jak zrobię samo * to będzie krzyczał bo wyświetli nie tyko pliki ale katalogi też, więc wypadałoby napisać Find. type f exec head qn 5 {} \; Find odszuka nie tylko pliki w katalogu ale też w jego podkatalogach, dlatego dorzucamy jeszcze Find. maxdepth 1 type f exec head qn 5 {} \; Zadanie 3 Wyświetl linie o numerach 3, 4 i 5 z pliku /etc/passwd Są to linie, które tworzą spójny blok w sensie są kolejne, a nie jakieś np. 2,5,7. Cat n /etc/passwd head n 5 tail n 3 Pierwsze n jest po to by cat ponumerowało linie, byśmy wiedzieli, czy nam faktycznie ładnie wyświetlił. Zadanie 4 Wyświetl linie o numerach 7, 6 i 5 od końca pliku /etc/passwd Cat n /etc/passwd tail n 7 head n 3 Zadanie 5 Wyświetl zawartość /etc/passwd w jednej linii Twórczość własna (każę mu wyświetlić w ten sposób, ze zamieniam entery na spacje): Cat /etc/passwd tr \n Zadanie 6 Za pomocą filtru tr wykonaj modyfikację pliku, polegającą na umieszczeniu każdego słowa w osobnej linii tr jest od translate \t znak tabulacji \n znak nowej linii u nas jest dwa razy by i spacja i tabulacja były zamienione, jeśli napiszemy tylko jedno \n to też będzie ok. cat plik tr \t \n\n Ładnie widać zastosowanie to polecenia na pliku w którym jest tylko dzisiejsza data. Zadanie 7 Zlicz wszystkie pliki znajdujące się w katalogu /etc i jego podkatalogach Wc - Word Count, a -l jest od czytania linii Find /etc/ wc l Ćwiczenia z systemów operacyjnych 17

18 Zadanie 8 Napisać polecenie zliczające sumę znaków z pierwszych trzech linii pliku /etc/passwd Czyli ten plik wrzucimy w potok, potem będziemy chcieli wyłuskać te trzy linie, a na koniec zliczyć znaki. Cat /etc/passwd head n 3 wc c -c by zliczał znaki Ale ono zlicza też spacje i entery, a to nam się nie podoba, wiec może usuńmy te znaki? Cat /etc/passwd head n 3 tr d \n wc c Zadanie 9 Wyświetl listę plików z aktualnego katalogu, zamieniając wszystkie małe litery na duże. Poszłoby ls tr abcd..z ABC..Z tylko trzeba by było je wszystkie wymienić, by było łatwiej to Ls tr a-z A-Z Zadanie 10 Wyświetl listę praw dostępu do plików w aktualnym katalogu, ich rozmiar i nazwę Zauważmy, że jak napiszemy ls l to polecenie to wyświetla w kolumnach wszystkie informacje, kolumny są od siebie oddzielone spacjami, a my chcemy tylko niektóre te kolumny -f mówi nam o tym która kolumna mnie interesuje ale domyślnym separatorem kolumn jest znak tabulacji, a u nas to nie jest tabulacja tylko spacja dlatego używamy d ls l cut f 1,5,9 d Ale wtedy gdy on ma dwie spacje pod rząd to się wszystko psuje, bo myśli że po jednej spacji jednak jest kolejna kolumna. ls l tr s cut f 1,5,9 d Tyle że nam się znów formatowanie rozjechało Zamieńmy więc wszystkie spacje na znak tabulacji ls l tr s cut f 1,5,9 d tr \t Ćwiczenia 8 Przetwarzanie potokowe ciąg dalszy Zadanie 10 inna wersja Wyświetl listę praw dostępu do plików w aktualnym katalogu, ich rozmiar i nazwę Inna wersja niż ls -l cut find. -maxdepth 1 -printf "%M %s %p \n" Ćwiczenia z systemów operacyjnych 18

19 printf wyświetla dane sformatowane i teraz po prawej stronie wyświetlamy sposób formatowania M od mode w sensie prawa dostępu s jak size p chyba jak nazwa skoro są spacje to dlatego jest "" \n by wszystko było w nowej linii Zadanie 11 Wyświetl listę plików w aktualnym katalogu, posortowaną według rozmiaru pliku ls -l tr -s " " sort -k 5 -n cut -f 9 -d " " rozmiar jest w piątej kolumnie, stad -k 5 man sort potem -t jest od separatora kolumn, nie używamy, bo boimy się, że wtedy nie poradzi sobie ze spacjami wielokrotnymi, domyślnie jest przejście ze znaku białego na inny niż biały, ale nie wiadomo co z tego... najpierw ściągamy wielokrotne spacje by jakoś to poszło po to jest tr, inaczej by nie wiedział ile jest kolumn, gdyby było dużo spacji sortowanie takie jednak stosuje kolejność leksykograficzną, a my chcemy inaczej po to jest -n by sortował wartości numeryczne zgodnie z naturalnym porządkiem liczbowym a potem jest cut by wyświetlił tylko 9 kolumnę, wcześniejsze wycina Zadanie 12 Wyświetl zawartość pliku /etc/passwd posortowaną wg numerów UID w kolejności od największego do najmniejszego sort -n -k 3 -t : /etc/passwd less sort -n -k 3 oznacza sortuj numerycznie względem 3 kolumny -t " " by to był domyślny separator Zadanie 13 Wyświetl zawartość pliku /etc/passwd posortowaną najpierw wg numerów GID w kolejności od największego do najmniejszego, a następnie UID sort -n -k 3 -t : /etc/passwd sort -ns -k 4 -t : more -s jest od tego by sortowanie było stabilne czyli by kolejne sortowanie nie psuło poprzedniego Zadanie 19 Wyświetl nazwy tych użytkowników, którzy domyślnie używają innego interpretera niż bash.*\.txt pisze tak bo to wyrażenie regularne i chodzi o to ze.* oznacza dowolna ilość dowolnych znaków potem jest zacytowana kolejna kropka jako.txt a zacytowana bo jest znakiem specjalnym znaczy co innego niż ta pierwsza kropka cat /etc/passwd grep -v /bin/bash$ cut -f 1 -d : Ćwiczenia z systemów operacyjnych 19

20 -v sprawi ze grep wybierze linie NIE pasujące do wzorca, a my chcemy wyświetlić wszystko co nie zawiera /bin/bash na końcu jest $, by wiedział, że te linie sie maja tak kończyć można dać :/bin/bash w sensie że teoretycznie mogłoby być tak, że bez tego dwukropka znajdują sie jedni, a z dwukropkiem drudzy choć u nas ta nie ma a końcówka mówi ze ma zostać wycięte wszystko poza pierwszą kolumną i że separatorem kolumn jest :, a nie domyślna spacja Zadanie 14 Podaj liczbę plików każdego użytkownika uniq - jeśli po sobie pojawi sie wielokrotnie ta sama linia to polecenie to ściśnie to do jednej linii najpierw zobaczmy o co chodzi: cat > pplik Ala Ala ma ma kota kota ctrl + d a teraz cat plik uniq i faktycznie wypluje tylko pojedyncze, a oczywiście nie zmieni wejściowego pliku no i mamy do uniq przełącznik -c który zlicza ilość powtórzeń chcemy wiec, by jedna linia odpowiadała jednemu plikowi użytkownika, czyli chyba będziemy sortować tez po identyfikatorach użytkownika by to było sensowne Opis tego co niżej: ls -l po to by był też identyfikator użytkownika / oznacza katalog główny R to przełącznik powoduje działanie ls rekursywne ctrl + c zatrzyma 2> to było standardowe wyjście diagnostyczne (błędy, te sprawy) /dev/null to kosz, nie można z niego czytać ale można zapisywać grep... ma mi usunąć puste linie czy spacje czy cos takiego, potem znów wyrzucam to co mi jest niepotrzebne, bo to co nas interesuje nigdy nie zaczyna sie /, bo zaczyna sie bajtem pełnym sekwencji uprawnień A potem mamy dowolna ilość znaków które kończą sie dwukropkiem na końcu linii chyba"" by sie przydały ael nie jest to pewne wyrzucam potem tez to co sie zaczyna od total bo on tak to zawsze to wyświetla a niepotrzebnie nam z tych danych które mam chcemy tylko 3 kolumne -k było przy sortowaniu a -f przy wycinaniu ściągamy tez spacje na wszelki wypadek spacje można tez cytować \ dwa razy jest sort by było ładniej Ćwiczenia z systemów operacyjnych 20

21 ls -lr /home/students 2>/dev/null grep -v ^$ grep -v "^/.*:$" grep -v ^total tr -s " " cut -f 3 -d " " sort uniq -c sort w większości w wyniku ostatniego polecenia dostaniemy 1 bo nie mamy uprawnień by zobaczyć pliki innych użytkowników i widzimy tylko ich ten główny katalog dane sa posortowane numerycznie względem ilości plików, ale wypadało napisać -n po postu tu tak wyszło bo to kwestia sortowania (konsultacje) można to było zrobić prościej: mówimy by znalazł w katalogu głównym cokolwiek, żadnych augmentów piszemy by wyświetlił to w sposób formatowany %U jak user find / -printf "%U\n" sort uniq -c sort Poniżej moja radosna twórczość czyli praca domowa; Zad 15 Sporządź statystykę praw dostępu (dla każdego z praw dostępu podaj ile razy zostało ono przydzielone). Po konsultacjach doszłam do wniosku, że chodzi o : Ls l cut f 1 d sort uniq -c Zad 16 Podaj nazwy trzech najmniejszych plików w katalogu posortowane wg nazwy ls l ~ grep ^- tr -s " " sort -k 5 -n head -n 3 sort -k 9 cut -f 9 -d " " sort Zad 17 Podaj pięciu użytkowników o największej liczbie uruchomionych procesów ps -au tr -s " " cut -f 1 -d " " uniq -c sort -nr head -n 5 tr -s " " cut -f 3 -d " " wersja z ćwiczeń ps -au cut -f 1 -d " " sort uniq -c sort -n tail -n 5 Zad 18 Wyświetl zawartość 3 największych podkatalogów katalogu bieżącego ls `ls -l grep ^d tr -s " " sort -rk 5 head -n 3 cut -f 9 -d " "` Zad 21 Wyświetl statystykę używanych komend (bez argumentów) w postaci posortowanej listy : ilość komenda History tr s cut f 3 d sort uniq c Zad 22 Ćwiczenia z systemów operacyjnych 21

22 W podanym katalogu utwórz podkatalogi wszystkim użytkownikom ze swojego roku I dodatkowo zapisz w pliku o nazwie users.txt posortowana listę tych użytkowników. Zad 23 Sprawdź, czy któryś z użytkowników jest zalogowany w systemie więcej niż jeden raz. Dla każdego takiego użytkownika należy wyświetlić jego identyfikator i listę terminali na których pracuje. Ćwiczenia 9 Dane utracone, próba odzyskania Oto polecenie które facet kazał nam wykonać Wyświetl listę wszystkich skrytpów powłoki z katalogu ~ i jego podkatalogów Twórczość Krzysia: find ~ -type f -printf "%p:" -exec head -n 1 {} \; egrep ':#!/bin/bash' cut -f 1 -d : egrep to to samo co grep E I uzywamy go wtedy gdy następuije potem wyrazenie regularne u nas natomiast printf jest z find i %p oznacza nazwę pliku Zadanie 20 Wyświetl nazwy wszystkich plików nagłówkowych posortowane wykorzystywanych w plikach bieżącego katalogu find ~ -maxdepth 1 -type f -exec cat {} \; grep ^#include\ \< cut -f2 -d \< cut -f1 -d \> sort uniq Zatem interesują nas pliki, które mają w swoim nagłówku coś na kształt #include<stdio.h>, gdzie za nagłówek uważamy stdio.h. Czyli chodzi o to by szukał w katalogu użytkownika na głębokość równą 1(czyli tylko w omawianym katalogu, już nie przeszukiwał jego podkatalogów). Brał pod uwagę tylko pliki stąd jest type f i wyświetlał to co znajdzie. Wrzucamy to w potok. Z tego grepujemy, czyli wypisujemy na ekran tylko interesujące nas linie z owych plików takie, które zaczynają się od #include (tu chyba prowadzący uznał że po include jest spacja, a zatem musimy ją zacytować ). Następnie z tego potoku wycinamy druga kolumnę stąd jest f2, gdzie za separator uważamy <, bo prowadzącemu chodzi o to, ze może być pomiędzy < tekst dużo spacji następnie to samo robimy z prawą stroną. Na koniec całość sortujemy, by móc skorzystać z polecenia uniq, które sprawi, że nawet jeśli jakiś nagłówek będzie popularny i wystąpi w wielu plikach, to i tak przy sortowaniu uwzględni wszystkiego jego wystąpienia i a potem polecenie uniq wszystkie powtarzające się linie ścieśni do jednej. Musimy też cytować znaki takie jak < czy >. Nie powinien nam niczego wyświetlić, ponieważ w naszych plikach nie ma żadnego z takimi nagłówkami. Fajne jest polecenie History Które w sumie pokazuje historię większości tego co zrobił dany użytkownik na irecie. Zacznijmy najpierw od tego, że jak naciśniemy Bash Ćwiczenia z systemów operacyjnych 22

23 i potem enter, to tak naprawdę uruchomimy drugiego basha co możemy sprawdzić poleceniem wyświetlającym strukturę drzewiastą ps fx Wychodzimy z tego basha poleceniem exit Możemy dalej napisać coś takiego: a=1 czyli jakby stworzyliśmy zmienną a i nadaliśmy jej wartość 1. By ją wyświetlić wpisujemy echo $a Działają operacje matematyczne np. Expr $a + 1 To wszystko jednak miało miejsce w podstawowej pierwszej powłoce basha. Jeśli otworzymy drugą, czyli wpiszemy bash i naciśniemy enter, to już wywołanie echo $a nam niczego nie zwróci. By to zmienić, należy wpisać export a I wtedy jak otworzę znów bash kolejnego I wpiszę echo $a to już mi wyświetli aktualną wartość tej zmiennej. Działają także rzeczy takie jak (tylko uwaga bardzo na spacje!) a=`expr $a + 1` czyli ten rodzaj cytowania, lub poniższy (po to by zmiennej po lewej stronie nadać wartość wyrażenia musze przed nawiasy wsadzić $, bez tego drugiego $ też ładnie działa. Działa także (( a = a + 1 )), czyli po prostu w (()) mogę wykonywać obliczenia. a=$(($a+1)) Wpisywaliśmy też coś takiego jak Set wyświetla wartości wszystkich zmiennych środowiskowych cokolwiek to oznacza Wyrażenia warunkowe if test 1 -eq 1; then ls; fi Lub zapisane równoważnie poniżej (przypominam że test zwracało kod czy wyrażenie po nim następujące jest poprawne czy nie) If warunek Then Instrukcja fi Odpowiednikiem test jest nawias kwadratowy jak poniżej UWAŻAĆ NA SPACJE! if [ 1 -eq 1 ]; then ls; fi Oczywiście takich rzeczy jak powyżej można używać też bez wyrażeń warunkowych np. [ 1 -eq 3 ] ls Ćwiczenia z systemów operacyjnych 23

Temat zajęć: Filtry, strumienie standardowe oraz przetwarzanie potokowe. stderr

Temat zajęć: Filtry, strumienie standardowe oraz przetwarzanie potokowe. stderr Temat zajęć: Filtry, strumienie standardowe oraz przetwarzanie potokowe Czas realizacji zajęć: 180 min. Zakres materiału, jaki zostanie zrealizowany podczas zajęć: Strumienie standardowe i ich przekierowywanie,

Bardziej szczegółowo

1. Znajdź za pomocą programu locate wszystkie pliki które zawierają w nazwie słowo netscape locate netscape

1. Znajdź za pomocą programu locate wszystkie pliki które zawierają w nazwie słowo netscape locate netscape FIND http://www.cs.put.poznan.pl/akobusinska/downloads/find.pdf 1. Znajdź za pomocą programu locate wszystkie pliki które zawierają w nazwie słowo netscape locate netscape 2. Ogranicz wynik polecenia 1

Bardziej szczegółowo

Powłoka I. Popularne implementacje. W stylu sh (powłoki zdefiniowanej w POSIX) W stylu csh. bash (najpopularniejsza) zsh ksh mksh.

Powłoka I. Popularne implementacje. W stylu sh (powłoki zdefiniowanej w POSIX) W stylu csh. bash (najpopularniejsza) zsh ksh mksh. Powłoka I Popularne implementacje W stylu sh (powłoki zdefiniowanej w POSIX) bash (najpopularniejsza) zsh ksh mksh W stylu csh csh tcsh 12 października 2018 1 / 16 Powłoka II Zachęta Komunikuje się z użytkownikiem

Bardziej szczegółowo

SYSTEMY OPERACYJNE I laboratorium 3 (Informatyka stacjonarne 2 rok, semestr zimowy)

SYSTEMY OPERACYJNE I laboratorium 3 (Informatyka stacjonarne 2 rok, semestr zimowy) Procesy i shell. Polecenia ps, sleep, exit, jobs, bg, fg, top, kill, bash, tcsh, which, type, whereis, touch. Metaznak & i >>. Dowiązania miękkie i twarde. Proces jest programem, który jest wykonywany

Bardziej szczegółowo

Bash - wprowadzenie. Bash - wprowadzenie 1/39

Bash - wprowadzenie. Bash - wprowadzenie 1/39 Bash - wprowadzenie Bash - wprowadzenie 1/39 Bash - wprowadzenie 2/39 Czym jest bash? Rysunek : Zadanie powłoki to ukrycie wywołań systemowych Bash - wprowadzenie 3/39 Czym jest bash? Przykład polecenia:

Bardziej szczegółowo

Niektóre katalogi są standardowymi katalogami zarezerwowanymi do użytku przez system. Znaczenie wybranych katalogów systemowych jest następujące:

Niektóre katalogi są standardowymi katalogami zarezerwowanymi do użytku przez system. Znaczenie wybranych katalogów systemowych jest następujące: Podstawy systemu Linux Linux jest systemem operacyjnym dla komputerów PC, opracowany na początku lat dziewięćdziesiątych przez Linusa Torvaldsa. Podobnie jak Unix jest on systemem wielozadaniowym - umożliwia

Bardziej szczegółowo

SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE

SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE Klasyczne polecenia: ls [opcje][katalog][pliki] opcje podstawowe -a wyświetla również pliki ukryte -b znaki niedrukowane jako liczby ósemkowe -c sortuje dane zgodnie z datą zmiany -k podaje wielkość pliku

Bardziej szczegółowo

Przekierowanie wejścia wyjścia:

Przekierowanie wejścia wyjścia: Przekierowanie wejścia wyjścia: program ma trzy podstawowe strumienie wejścia-wyjścia - standardowe wejście - standardowe wyjście - standardowe wyjście diagnostyczne przekierowanie standardowego wyjścia

Bardziej szczegółowo

Znaki globalne w Linuxie

Znaki globalne w Linuxie Znaki globalne w Linuxie * reprezentuje jeden lub wiele znaków (wild-card character)? reprezentuje dokładnie jeden znak (wild-card character) [abcde] reprezentuje dokładnie jeden znak z wymienionych [a-e]

Bardziej szczegółowo

W pierwszej kolumnie wyświetlany jest identyfikator procesu (pid)

W pierwszej kolumnie wyświetlany jest identyfikator procesu (pid) Ćwiczenie 2 Cel ćwiczenia: Poznanie mechanizmów wejścia/wyjścia, zapoznanie się ze sposobami wyświetlania plików tekstowych i wyszukiwania informacji, podstawowe operacje na plikach tekstowych, zmienne

Bardziej szczegółowo

Linux: System Plików

Linux: System Plików Linux: System Plików Systemy Operacyjne Mateusz Hołenko 3 marca 2013 Plan zajęć Wszystko jest plikiem Obsługa systemu plików Prawa dostępu Wyszukiwanie Mateusz Hołenko Linux: System Plików [2/24] Wszystko

Bardziej szczegółowo

Technologie Informacyjne - Linux 2

Technologie Informacyjne - Linux 2 Technologie Informacyjne - 2 Instytut Matematyki Uniwersytet Gdański Powłoka - polecenia pośredniczace Polecenie grep wypisuje z pliku lub strumienia wejściowego te wiersze, które sa zgodne z podanym wyrażeniem.

Bardziej szczegółowo

Wstęp do informatyki. stęp do informatyki Polecenia (cz.2)

Wstęp do informatyki. stęp do informatyki Polecenia (cz.2) Wstęp do informatyki stęp do informatyki Polecenia (cz.2) Lista procesów top Pokaż listę procesów polecenie interaktywne Procesy Uruchamianie w tle. shell nie czeka na zakończenie procesu, można wydawać

Bardziej szczegółowo

Systemy operacyjne. Instrukcja laboratoryjna. Ćwiczenie 1: Polecenia systemu UNIX/LINUX. Opracował: dr inż. Piotr Szpryngier

Systemy operacyjne. Instrukcja laboratoryjna. Ćwiczenie 1: Polecenia systemu UNIX/LINUX. Opracował: dr inż. Piotr Szpryngier Systemy operacyjne Instrukcja laboratoryjna Ćwiczenie 1: Polecenia systemu UNIX/LINUX Opracował: dr inż. Piotr Szpryngier Olsztyn 2009 1 Wprowadzenie. Cel zajęć praktycznych. Wymagania stawiane studentom

Bardziej szczegółowo

Pracownia Komputerowa wyk ad II

Pracownia Komputerowa wyk ad II Pracownia Komputerowa wykad II dr Magdalena Posiadaa-Zezula Magdalena.Posiadala@fuw.edu.pl http://www.fuw.edu.pl/~mposiada Magdalena.Posiadala@fuw.edu.pl 1 Systemy operacyjne Windows np. Windows 8. Systemy

Bardziej szczegółowo

Administracja sieciowymi systemami operacyjnymi III Klasa - Linux

Administracja sieciowymi systemami operacyjnymi III Klasa - Linux Administracja sieciowymi systemami operacyjnymi III Klasa - Linux SKRYPTY POWŁOKI mgr inż. Tomasz Borowiec SKRYPTY POWŁOKI - PODSTAWY W Linuksie skrypt jest plikiem tekstowym zawierającym polecenia systemowe

Bardziej szczegółowo

Linux Polecenia. Problem nadpisywania plików. Zmienna noclobber i noglob. Filtry i metaznaki. Problem nadpisywania plików. Opracował: Andrzej Nowak

Linux Polecenia. Problem nadpisywania plików. Zmienna noclobber i noglob. Filtry i metaznaki. Problem nadpisywania plików. Opracował: Andrzej Nowak Linux Polecenia Opracował: Andrzej Nowak Problem nadpisywania plików. Zmienna noclobber i noglob. Filtry i metaznaki. Utwórz katalog lab_5 i przejdź do niego. $ mkdir lab_5 ; cd lab_5 Problem nadpisywania

Bardziej szczegółowo

1 Przygotował: mgr inż. Maciej Lasota

1 Przygotował: mgr inż. Maciej Lasota Laboratorium nr 1 1/7 Język C Instrukcja laboratoryjna Temat: Programowanie w powłoce bash (shell scripting) 1 Przygotował: mgr inż. Maciej Lasota 1) Wprowadzenie do programowania w powłoce Skrypt powłoki

Bardziej szczegółowo

Operatory zmiany sposobu przypisania standardowych strumieni >,<,>> Jeżeli pierwsze polecenie powiodło się to wykona drugie

Operatory zmiany sposobu przypisania standardowych strumieni >,<,>> Jeżeli pierwsze polecenie powiodło się to wykona drugie Linux Polecenia Opracował: Andrzej Nowak Operatory zmiany sposobu przypisania standardowych strumieni >,> Przykłady: 2> plik przypisuje standardowe wyjście błędów do pliku, 1>&2 przypisanie standardowe

Bardziej szczegółowo

Wstęp do systemów wielozadaniowych laboratorium 02 Praca w systemie plików

Wstęp do systemów wielozadaniowych laboratorium 02 Praca w systemie plików Wstęp do systemów wielozadaniowych laboratorium 02 Praca w systemie plików Jarosław Piersa Wydział Matematyki i Informatyki, Uniwersytet Mikołaja Kopernika 2013-10-08 Co to jest konsola / terminal UNIX-owy?

Bardziej szczegółowo

Uruchamianie programów w systemie Linux, potoki, strumienie, procesy, alias

Uruchamianie programów w systemie Linux, potoki, strumienie, procesy, alias 7 październik 2008 Uruchomienie, monitorowanie procesu, potoki, aliasy S laj d 1 Uruchamianie programów w systemie Linux, potoki, strumienie, procesy, alias 7 październik 2008 Uruchomienie, monitorowanie

Bardziej szczegółowo

Narzędzia informatyczne w językoznawstwie

Narzędzia informatyczne w językoznawstwie Narzędzia informatyczne w językoznawstwie Wiersz poleceń - Potoki i pliki wsadowe Marcin Junczys-Dowmunt junczys@amu.edu.pl Zakład Logiki Stosowanej http://www.logic.amu.edu.pl 22. października 2008 Marcin

Bardziej szczegółowo

Kurs systemu Unix wykład wstępny. Kurs systemu Unix 1

Kurs systemu Unix wykład wstępny. Kurs systemu Unix 1 Kurs systemu Unix wykład wstępny Kurs systemu Unix 1 Cele wykladu Zdobycie podstawowej wiedzy o systemie i jego narzędziach. Poznanie unixowych języków skryptowych (bash, awk,...). Nauka programowania

Bardziej szczegółowo

Pracownia Komputerowa wykład II

Pracownia Komputerowa wykład II Pracownia Komputerowa wykład II dr Magdalena Posiadała-Zezula http://www.fuw.edu.pl/~mposiada 1 Systemy operacyjne! Windows np. Windows 8.! Systemy unixowe:! Linux i Mac OS X 2 Logowanie na konta studenckie!

Bardziej szczegółowo

1. Wyrażenia regularne. Symbole w wyrażeniach regularnych 1 :

1. Wyrażenia regularne. Symbole w wyrażeniach regularnych 1 : 1. Wyrażenia regularne Symbole w wyrażeniach regularnych 1 : Aby wyświetlić linie zawierające słowo Mouse z informacji dziennika zdarzeń jądra systemu, można użyć poniższego polecenia. dmesg wyświetla

Bardziej szczegółowo

Ćwiczenie 1. Podstawowe wiadomości

Ćwiczenie 1. Podstawowe wiadomości Ćwiczenie 1. Cel ćwiczenia: Zapoznanie się z podstawowymi poleceniami systemu Linux. Poznanie praw dostępu do plików oraz struktury katalogów systemu Linux. Podstawowe informacje o systemie. Podstawowe

Bardziej szczegółowo

2. System uprawnień w linuxie

2. System uprawnień w linuxie 2. System uprawnień w linuxie Uprawnienia do plików: -rw-r--r-x 1 pawelza students 0 Lis 17 08:21 plik Mamy tutaj trzy grupy uprawnień: -rw - dla właściciela (owner, oznaczany też "user" reprezentowany

Bardziej szczegółowo

Sieci i systemy operacyjne I Ćwiczenie 1. Podstawowe polecenia systemu Unix

Sieci i systemy operacyjne I Ćwiczenie 1. Podstawowe polecenia systemu Unix Wydział Zarządzania i Modelowania Komputerowego Specjalność: Informatyka Stosowana Rok III Semestr V 1. Logowanie w systemie Unix. Sieci i systemy operacyjne I Ćwiczenie 1. Podstawowe polecenia systemu

Bardziej szczegółowo

Ćwiczenie 9 Linux - operacje systemu plików

Ćwiczenie 9 Linux - operacje systemu plików Systemy teleinformatyczne AiR Ćwiczenie 9 Linux - operacje systemu plików 1. Ściągnąć program PUTTY - (portal tbajorek.prz.rzeszow.pl lub www.prz.rzeszow.pl/~tbajorek - dostęp po zalogowaniu: użytkownik:

Bardziej szczegółowo

BASH - LINIA POLECEŃ. Bioinformatyka 2018/2019

BASH - LINIA POLECEŃ. Bioinformatyka 2018/2019 BASH - LINIA POLECEŃ Bioinformatyka 2018/2019 PODSTAWOWE DEFINICJE Linux system operacyjny, które oferuje kompletne środowisko programistyczne Powłoka interfejs wiersza poleceń zapewniający komunikację

Bardziej szczegółowo

System operacyjny UNIX Ćwiczenie 1. Podstawowe polecenia systemu Unix

System operacyjny UNIX Ćwiczenie 1. Podstawowe polecenia systemu Unix Wydział Mechatroniki i Budowy Maszyn Specjalność: Automatyka i Robotyka Rok II Semestr IV 1. Logowanie w systemie Unix. System operacyjny UNIX Ćwiczenie 1. Podstawowe polecenia systemu Unix Do zalogowania

Bardziej szczegółowo

PRACOWNIA INFORMATYCZNA BASH - PODSTAWOWE INFORMACJE

PRACOWNIA INFORMATYCZNA BASH - PODSTAWOWE INFORMACJE PRACOWNIA INFORMATYCZNA BASH - PODSTAWOWE INFORMACJE Magda Mielczarek Pracownia Informatyczna 2015/2016 1 Podstawowe definicje Linux system operacyjny, które oferuje kompletne środowisko programistyczne

Bardziej szczegółowo

Moduł 4: Strumienie, potoki, sterowanie procesami

Moduł 4: Strumienie, potoki, sterowanie procesami Moduł 4: Strumienie, potoki, sterowanie procesami Strumienie i potoki Standardowe strumienie są podstawowymi kanałami komunikacji pomiędzy komputerem a otoczeniem. Do podstawowych strumieni należą Standard

Bardziej szczegółowo

Zmienne powłoki. Wywołanie wartości następuje poprzez umieszczenie przed nazwą zmiennej znaku dolara ($ZMIENNA), np. ZMIENNA=wartosc.

Zmienne powłoki. Wywołanie wartości następuje poprzez umieszczenie przed nazwą zmiennej znaku dolara ($ZMIENNA), np. ZMIENNA=wartosc. Zmienne powłoki Zmienne powłoki (shell variables) to tymczasowe zmienne, które mogą przechowywać wartości liczbowe lub ciągi znaków. Związane są z powłoką, Przypisania wartości do zmiennej następuje poprzez

Bardziej szczegółowo

Skrypty powłoki Skrypty Najcz ciej u ywane polecenia w skryptach:

Skrypty powłoki Skrypty Najcz ciej u ywane polecenia w skryptach: Skrypty powłoki Skrypty są zwykłymi plikami tekstowymi, w których są zapisane polecenia zrozumiałe dla powłoki. Zadaniem powłoki jest przetłumaczenie ich na polecenia systemu. Aby przygotować skrypt, należy:

Bardziej szczegółowo

Ćwiczenia Linux konsola

Ćwiczenia Linux konsola Ćwiczenia Linux konsola Ćwiczenie wstępne: Wyczyść terminal za pomocą polecenia clear. Ćwiczenie 1. Wyświetlanie pomocy 1. Wyświetl pomoc za pomocą poleceń man man oraz info (wyjście z pomocy: klawisz

Bardziej szczegółowo

tworzenie katalogów Aby utworzyć nowy katalog wpisz: mkdir katalog1 Ta komenda utworzy katalog o nazwie katalog1.

tworzenie katalogów Aby utworzyć nowy katalog wpisz: mkdir katalog1 Ta komenda utworzy katalog o nazwie katalog1. Linux podobnie jak MacOS X są systemami opartymi na Unixie. Wiele programów linuxowych działa z poziomu terminala dlatego aby móc ich używać należy poznać podstawowe komendy systemu Unix. Nauczycie się

Bardziej szczegółowo

Przedstawię teraz tzw. podstawowe symbole wyrażenia regularne (BRE, Basic Regular Expression)

Przedstawię teraz tzw. podstawowe symbole wyrażenia regularne (BRE, Basic Regular Expression) Sed edytor strumieniowy,sed wczytuje bieżący wiersz pliku do wewnętrznego bufora celem manipulowania tekstem. Wynik jest wysyłany na standardowe wyjście. Oryginalny plik nie jest nigdy zmieniany. Jeżeli

Bardziej szczegółowo

Trochę o plikach wsadowych (Windows)

Trochę o plikach wsadowych (Windows) Trochę o plikach wsadowych (Windows) Zmienne środowiskowe Zmienną środowiskową można ustawić na stałe w systemie (Panel sterowania->system- >Zaawansowane ustawienia systemu->zmienne środowiskowe) lub też

Bardziej szczegółowo

System plików - wprowadzenie. Ścieżki dostępu. Informatyka ćw 1

System plików - wprowadzenie. Ścieżki dostępu. Informatyka ćw 1 Informatyka ćw 1 Linux - operacje systemu plików 1. Ściągnąć program PUTTY - (portal tbajorek.prz.rzeszow.pl - dostęp po zalogowaniu: użytkownik: student hasło: samoloty 2. Skonfigurować połączenie z adresem

Bardziej szczegółowo

Wstęp do informatyki Shell podstawy

Wstęp do informatyki Shell podstawy Wstęp do informatyki Shell podstawy Podstawowe polecenia less plik(i) Przeglądaj interaktywnie zawartość plików. Można używać klawiszy kursora, PgDn, PgUp, etc. Koniec pracy (q), wyszukiwanie / Less is

Bardziej szczegółowo

Podstawy używania konsoli tekstowej w systemie Linux. Andrzej Zbrzezny

Podstawy używania konsoli tekstowej w systemie Linux. Andrzej Zbrzezny Podstawy używania konsoli tekstowej w systemie Linux Andrzej Zbrzezny 25 października 2012 Rozdział 1 Podstawy konsoli 1.1 Podstawy użytkowania Linuksa w konsoli tekstowej 1. Włączanie i wyłączanie systemu

Bardziej szczegółowo

Laboratorium systemów operacyjnych ćwiczenie nr 3. [ilość modułów: 1] Temat zajęć: Procesy w systemie operacyjnym

Laboratorium systemów operacyjnych ćwiczenie nr 3. [ilość modułów: 1] Temat zajęć: Procesy w systemie operacyjnym Temat zajęć: Procesy w systemie operacyjnym Czas realizacji zajęć: 45 min. Zakres materiału, jaki zostanie zrealizowany podczas zajęć: Pojęcie procesu, procesy w systemie, usuwanie procesów, priorytety

Bardziej szczegółowo

BASH - WPROWADZENIE Bioinformatyka 4

BASH - WPROWADZENIE Bioinformatyka 4 BASH - WPROWADZENIE Bioinformatyka 4 DLACZEGO BASH? Praca na klastrach obliczeniowych Brak GUI Środowisko programistyczne Szybkie przetwarzanie danych Pisanie własnych skryptów W praktyce przetwarzanie

Bardziej szczegółowo

Wstęp do systemu Linux

Wstęp do systemu Linux M. Trzebiński Linux 1/8 Wstęp do systemu Linux Maciej Trzebiński Instytut Fizyki Jądrowej Polskiej Akademii Nauk Praktyki studenckie na LHC IFJ PAN 6lipca2015 Uruchomienie maszyny w CC1 M. Trzebiński Linux

Bardziej szczegółowo

Systemy operacyjne. System operacyjny Linux - wstęp. Anna Wojak

Systemy operacyjne. System operacyjny Linux - wstęp. Anna Wojak Systemy operacyjne System operacyjny Linux - wstęp Anna Wojak 1 1 Wstęp Linux jest systemem z rodziny Unix. Pierwsza wersja systemu została opracowana w 1969 roku przez K.Thompsona i D.Ritchie Jest to

Bardziej szczegółowo

Wstęp do systemów wielozadaniowych laboratorium 03 Praca w powłoce UNIX-owej

Wstęp do systemów wielozadaniowych laboratorium 03 Praca w powłoce UNIX-owej Wstęp do systemów wielozadaniowych laboratorium 03 UNIX-owej Jarosław Piersa Wydział Matematyki i Informatyki, Uniwersytet Mikołaja Kopernika 2012-10-09 Co to jest konsola / terminal UNIX-owy? Odpowiednik

Bardziej szczegółowo

Zakład Systemów Rozproszonych

Zakład Systemów Rozproszonych Zakład Systemów Rozproszonych Politechnika Rzeszowska Moduł 5: Wybrane programy użytkowe Edytor Vi Edytor Vi uruchamiany jest w oknie terminala. Przy jego pomocy możemy dokonywać następujących operacji:

Bardziej szczegółowo

Temat zajęć: Wprowadzenie oraz obsługa systemu plików.

Temat zajęć: Wprowadzenie oraz obsługa systemu plików. Temat zajęć: Wprowadzenie oraz obsługa systemu plików. Czas realizacji zajęć: 135 min. Zakres materiału, jaki zostanie zrealizowany podczas zajęć: Logowanie do systemu, obsługa pomocy systemowej, obsługa

Bardziej szczegółowo

Umożliwia ona pokazanie ukrytych plików i katalogów, nazwa ich zaczyna się od kropki.

Umożliwia ona pokazanie ukrytych plików i katalogów, nazwa ich zaczyna się od kropki. Ćwiczenie 2. Podstawowe operacje na plikach i katalogach. Na dowolnej konsoli wirtualnej zaloguj się jako jacek1, katalogiem domowym tego użytkownika jest /home/jacek1. Wszystkie ćwiczenia będziemy wykonywać

Bardziej szczegółowo

host name: 192.168.11.110 protokół SSH System plików - wprowadzenie Ścieżki dostępu

host name: 192.168.11.110 protokół SSH System plików - wprowadzenie Ścieżki dostępu Ćw. 13 Linux - operacje systemu plików 1. Ściągnąć program PUTTY ze strony z materiałami dydaktycznymi - zapisać, rozpakować skompresowany plik i uruchomić. 2. Skonfigurować host name: host name: 192.168.11.110

Bardziej szczegółowo

Architektura systemów informatycznych WPROWADZENIE DO SYSTEMU LINUX

Architektura systemów informatycznych WPROWADZENIE DO SYSTEMU LINUX Architektura systemów informatycznych WPROWADZENIE DO SYSTEMU LINUX Materiały: www.staff.amu.edu.pl/~evert/asi.php W razie nieobecności proszę o zapoznanie się z materiałem z ćwiczeń w domu Zaliczenie

Bardziej szczegółowo

- wszystkie elementy - wszystkie elementy

- wszystkie elementy - wszystkie elementy Tablice: indeksy całkowite >=0 tworzenie: TABLICA[0]=45 TABLICA[1]=23 TABLICA[2]=78 lub TABLICA=(45 23 78) lub TABLICA=($@) odwołanie echo ${TABLICA[3] echo ${TABLICA[*] echo ${TABLICA[@] Długość zmiennej:

Bardziej szczegółowo

vi - Edytor tekstu. 1. To, co każdy powinien wiedzieć o vi!!!

vi - Edytor tekstu. 1. To, co każdy powinien wiedzieć o vi!!! vi - Edytor tekstu. Pozwolę sobie, na wprowadzenie Was drodzy czytelnicy, w świat magii jaki oferuje nam edytor vi. Na pierwszy rzut oka, vi nie jest imponującym edytorem. Ale posiada jedną niezaprzeczalnie

Bardziej szczegółowo

Przetwarzanie tekstu 2. Operacje na plikach tekstowych w systemie Linux

Przetwarzanie tekstu 2. Operacje na plikach tekstowych w systemie Linux Przetwarzanie tekstu 2 Operacje na plikach tekstowych w systemie Linux filtry programy przetwarzajace pliki (w szczególności tekstowe) w taki sposób, że odczytuja dane (plik wejściowy) ze standardowego

Bardziej szczegółowo

Chemiateoretyczna. Monika Musiał. Ćwiczenia

Chemiateoretyczna. Monika Musiał. Ćwiczenia Chemiateoretyczna Monika Musiał Ćwiczenia SYSTEM LINUX- podstawowe komendy Operacje na katalogach i plikach pwd wypisanie ścieżki do bieża cego katalogu. oznacza katalog bieża cy.. oznacza katalog nadrzȩdny

Bardziej szczegółowo

Jądro Powłoka System plików Programy użytkowe

Jądro Powłoka System plików Programy użytkowe LINUX Jądro Powłoka System plików Programy użytkowe / tmp etc dev bin usr home proc bin lib ułatwienia pliki ukryte pol1;pol2 pol1 \ arg1 \ arg2 ~/.. $HOME.nazwa ls -a metaznaki *? [.] maskowanie

Bardziej szczegółowo

Linux cz.3: polecenia systemowe, ćwiczenia

Linux cz.3: polecenia systemowe, ćwiczenia Linux cz.3: polecenia systemowe, ćwiczenia Wykład: polecenia terminala, manualia systemowe, uprawnienia, kompresja, archiwizacja, ukrywanie plików, sudo su, ps, kill, chmod, chown, tar, gzip, whoami, ls,

Bardziej szczegółowo

Elementy wyrażeń regularnych

Elementy wyrażeń regularnych Elementy wyrażeń regularnych: znaki specjalne - zakotwiczenia Daszek "^" oznacza początek wiersza, dolar "$" oznacza koniec wiersza. np.: "^.o.a$" Wyrażenie odpowiada ciągowi dokładnie czterech znaków

Bardziej szczegółowo

Stosowanie poleceń związanych z zarządzaniem plikami oraz katalogami: nazwa_polecenia -argumenty ścieżka/ścieżki do katalogu/pliku

Stosowanie poleceń związanych z zarządzaniem plikami oraz katalogami: nazwa_polecenia -argumenty ścieżka/ścieżki do katalogu/pliku Stosowanie poleceń związanych z zarządzaniem plikami oraz katalogami: nazwa_polecenia -argumenty ścieżka/ścieżki do katalogu/pliku ls - sprawdzanie zawartości katalogu ls(nazwa Polecenia) -la(argumenty(-a

Bardziej szczegółowo

Linux: potoki, przekierowania i inne operatory sterujące w przykładach

Linux: potoki, przekierowania i inne operatory sterujące w przykładach - 1/9 - Linux: potoki, przekierowania i inne operatory sterujące w przykładach Strumienie danych: stdin, stdout, sterr... 2 Przekierowanie standardowego strumienia wyjścia (stout) do pliku - operatory

Bardziej szczegółowo

Szkolenie AGH Linux. Nie bój się konsoli i zdaj kolosa na 5.0!!! Tytuł wcale nie przesadzony ;)

Szkolenie AGH Linux. Nie bój się konsoli i zdaj kolosa na 5.0!!! Tytuł wcale nie przesadzony ;) Szkolenie AGH Linux Nie bój się konsoli i zdaj kolosa na 5.0!!! Tytuł wcale nie przesadzony ;) O mnie Imię i nazwisko: Pieczyrak Paweł Kryptonim: Morfeusz888 Osiągnięcia Administrator pomocniczy na publicznym

Bardziej szczegółowo

Powłoka interpreter poleceń systemu UNIX

Powłoka interpreter poleceń systemu UNIX SOE - Systemy Operacyjne Wykład 4 Powłoka interpreter poleceń systemu UNIX dr inż. Andrzej Wielgus Instytut Mikroelektroniki i Optoelektroniki WEiTI PW Powłoka Interpreter poleceń, powłoka (ang. shell)

Bardziej szczegółowo

Lekcja 10. Uprawnienia. Dołączanie plików przy pomocy funkcji include() Sprawdzanie, czy plik istnieje przy pmocy funkcji file_exists()

Lekcja 10. Uprawnienia. Dołączanie plików przy pomocy funkcji include() Sprawdzanie, czy plik istnieje przy pmocy funkcji file_exists() Paweł Gmys PHP strona 1 Lekcja 10 Uprawnienia Aby skrypt PHP mógł odwołać się do pliku, musi mieć odpowiednie uprawnienia. Szczegóły są zależne od serwera. Najczęściej chyba skrypt ma uprawnienia takie,

Bardziej szczegółowo

Prawa dostępu do plików (1)

Prawa dostępu do plików (1) Prawa dostępu do plików (1) w - zapis x wykonywanie r odczytywanie - brak uprawnień Rodzaj pliku: - zwykły plik d katalog l link (dowiązanie symboliczne) b plik specjalny blokow c plik specjalny znakowy

Bardziej szczegółowo

Konsola Linux. autor: Mariusz Barnaś

Konsola Linux. autor: Mariusz Barnaś Konsola Linux autor: Mariusz Barnaś Wstęp Pierwsze uruchomienie Operacje na plikach Poruszanie się po katalogach Tworzenie plików i katalogów Wypisanie zawartości katalogu Dowiązania między plikami Łączenie

Bardziej szczegółowo

I. Program II. Opis głównych funkcji programu... 19

I. Program II. Opis głównych funkcji programu... 19 07-12-18 Spis treści I. Program... 1 1 Panel główny... 1 2 Edycja szablonu filtrów... 3 A) Zakładka Ogólne... 4 B) Zakładka Grupy filtrów... 5 C) Zakładka Kolumny... 17 D) Zakładka Sortowanie... 18 II.

Bardziej szczegółowo

Prawa dostępu do plików

Prawa dostępu do plików Prawa dostępu do plików Wszystkie pliki systemów uniksowych posiadają swoje prawa dostępu dla zapisu, odczytu i wykonywania. Jeżeli dotychczas spotykałeś się z systemami Windows na partycjach FAT - możesz

Bardziej szczegółowo

Egzamin pisemny z przedmiotu: Systemy operacyjne Semestr I

Egzamin pisemny z przedmiotu: Systemy operacyjne Semestr I Egzamin pisemny z przedmiotu: Systemy operacyjne Semestr I Uwaga: Test odnosi się do systemu operacyjnego Linux! 1) Linux jest systemem wielodostępnym, co oznacza, że: a) pozwala na logowanie się do systemu

Bardziej szczegółowo

EDYTOR TEKSTOWY VIM WYBRANE POLECENIA. Pracownia Informatyczna 5

EDYTOR TEKSTOWY VIM WYBRANE POLECENIA. Pracownia Informatyczna 5 EDYTOR TEKSTOWY VIM WYBRANE POLECENIA Pracownia Informatyczna 5 DLACZEGO VIM? nieprzyjazny? standardowy edytor w systemach UNIX niezwykle użyteczny dość szybki (ważne przy plikach o dużych rozmiarach)

Bardziej szczegółowo

WPROWADZENIE. Warto pamiętać o opcji autouzupełniania, której używamy naciskając klawisz [Tab]

WPROWADZENIE. Warto pamiętać o opcji autouzupełniania, której używamy naciskając klawisz [Tab] WPROWADZENIE Po uruchomieniu terminala użytkownik uzyskuje tzw. znak zachęty (ang. shell prompt), np. $ lub #. Po zobaczeniu znaku zachęty można już zacząć wpisywać polecenia dla systemu. Historia wykonanych

Bardziej szczegółowo

Po uruchomieniu programu nasza litera zostanie wyświetlona na ekranie

Po uruchomieniu programu nasza litera zostanie wyświetlona na ekranie Część X C++ Typ znakowy służy do reprezentacji pojedynczych znaków ASCII, czyli liter, cyfr, znaków przestankowych i innych specjalnych znaków widocznych na naszej klawiaturze (oraz wielu innych, których

Bardziej szczegółowo

Wstęp do systemu Linux

Wstęp do systemu Linux M. Trzebiński Linux 1/8 Wstęp do systemu Linux Maciej Trzebiński Instytut Fizyki Jądrowej Polskiej Akademii Nauk Praktyki studenckie na LHC IVedycja:2016r. IFJ PAN Uruchomienie terminala Jeżeli na komputerze

Bardziej szczegółowo

Struktura katalogów. Prawa dostępu

Struktura katalogów. Prawa dostępu Struktura katalogów /bin podstawowe programy takie jak bash czy cat /boot jądro systemu oraz pliki niezbędne do poprawnego uruchomienia systemu /etc pliki konfiguracyjne (np. /etc/passwd, /etc/group) /root

Bardziej szczegółowo

Python jest interpreterem poleceń. Mamy dwie możliwości wydawania owych poleceń:

Python jest interpreterem poleceń. Mamy dwie możliwości wydawania owych poleceń: W pierwszym kroku nauczymy się uruchamiać w Pythonie tradycyjny* program ". Dzięki temu nauczysz się pisać w języku Python, a także zapisywać i uruchamiać swoje pythonowe programy. *Jest taka tradycja,

Bardziej szczegółowo

Zastosowanie filtrów w Linuksie

Zastosowanie filtrów w Linuksie Zastosowanie filtrów w Linuksie grep poszukiwanie ciągu znaków w pliku cut selekcjonuje (znajduje) pojedyńcze znaki lub zony sort uporządkowanie, fuzja plików more wyświetlanie pliku strona po stronie

Bardziej szczegółowo

Ćwiczenie nr 14: System Linux

Ćwiczenie nr 14: System Linux Ćwiczenie nr 14: System Linux Barbara Łukawska, Adam Krechowicz, Tomasz Michno Czym jest Linux? Słowo Linux może oznaczać zarówno jądro systemowe Linux, jak i całą rodzinę systemów operacyjnych, które

Bardziej szczegółowo

Ćwiczenie 1. Ćwiczenie 2. Ćwiczenie 3. Opisz działanie następujących komend systemowych : COPY EDIT FDISK FIND FORMAT XCOPY

Ćwiczenie 1. Ćwiczenie 2. Ćwiczenie 3. Opisz działanie następujących komend systemowych : COPY EDIT FDISK FIND FORMAT XCOPY Ćwiczenie 1 Opisz działanie następujących komend systemowych : COPY EDIT FDISK FIND FORMAT XCOPY Ćwiczenie 2 Na dysku d utworzyć drzewo katalogów (a) i zmienić katalog bieżący na przemysłowe (b) Ćwiczenie

Bardziej szczegółowo

System plików. Podstawy systemu Linux

System plików. Podstawy systemu Linux Podstawy systemu Linux Linux jest systemem operacyjnym dla komputerów PC, opracowany na początku lat dziewięćdziesiątych przez Linusa Torvaldsa. Podobnie jak Unix jest on systemem wielozadaniowym - umoŝliwia

Bardziej szczegółowo

POPULARNE POLECENIA SKRYPTY. Pracownia Informatyczna 2

POPULARNE POLECENIA SKRYPTY. Pracownia Informatyczna 2 SKRYPTY Pracownia Informatyczna 2 PRACOWNIA INFORMATYCZNA 2017/2018 MAGDA MIELCZAREK PRACOWNIA INFORMATYCZNA 2017/2018 MAGDA MIELCZAREK 2 cal wyświetlenie kalendarza Składnia: cal 2017, cal Polecenie cal

Bardziej szczegółowo

Cechy systemu Linux. Logowanie się do systemu. Powłoka systemowa

Cechy systemu Linux. Logowanie się do systemu. Powłoka systemowa Cechy systemu Linux pełna wielozadaniowość wielu użytkowników w tym samym czasie może wykonywać kilka zadań na tym samym komputerze; pamięć wirtualna Linux może używać części dysku twardego jako pamięci

Bardziej szczegółowo

Skrypty powłoki w systemie Linux

Skrypty powłoki w systemie Linux Skrypty powłoki w systemie Linux Wykonywanie codziennych czynności w systemie operacyjnym jest męczące, gdy za każdym razem trzeba wpisywać te same zestawy komend. Znacznie wygodniej byłoby zapisać je

Bardziej szczegółowo

Laboratorium Strumienie w systemach UNIX 4.2 Filtry strumieniowe

Laboratorium Strumienie w systemach UNIX 4.2 Filtry strumieniowe Laboratorium 4 4.1 Strumienie w systemach UNIX 4.2 Filtry strumieniowe 1 4.1 Strumienie w systemach UNIX W Linuxie, jaz każdym procesem związane są tzw. strumienie. Z każdym procesem związane są zwykle

Bardziej szczegółowo

UŻYTKOWNIK. APLIKACJE UŻYTKOWE (wszelkie programy zawarte domyślnie w systemie operacyjnym jak i samodzielnie zainstalowane przez użytkownika systemu)

UŻYTKOWNIK. APLIKACJE UŻYTKOWE (wszelkie programy zawarte domyślnie w systemie operacyjnym jak i samodzielnie zainstalowane przez użytkownika systemu) System operacyjny mgr inż. Sławomir Kopko System operacyjny (OS - Operating System) zaraz po sprzęcie jest jednym z najważniejszych składników komputera. Najprościej mówiąc jest to oprogramowanie zarządzające

Bardziej szczegółowo

znajdowały się różne instrukcje) to tak naprawdę definicja funkcji main.

znajdowały się różne instrukcje) to tak naprawdę definicja funkcji main. Część XVI C++ Funkcje Jeśli nasz program rozrósł się już do kilkudziesięciu linijek, warto pomyśleć o jego podziale na mniejsze części. Poznajmy więc funkcje. Szybko się przekonamy, że funkcja to bardzo

Bardziej szczegółowo

Filtry, metaznaki, cytowania. Proste skrypty. Polecenia find, tee, mail.

Filtry, metaznaki, cytowania. Proste skrypty. Polecenia find, tee, mail. Filtry, metaznaki, cytowania. Proste skrypty. Polecenia find, tee, mail. Utwórz katalog lab_3 i przejdź do niego. Polecenie find Polecenie to jest niezwykle pożyteczne dla odszukiwania poszczególnych grup

Bardziej szczegółowo

ZAJĘCIA Komendy Linux WB -> w konsoli tty2 finger exit man pwd pwd finger ls man ls. -> po 2 minusach interpretacja słowa

ZAJĘCIA Komendy Linux WB -> w konsoli tty2 finger exit man pwd pwd finger ls man ls. -> po 2 minusach interpretacja słowa ZAJĘCIA Komendy Linux WB -> w konsoli tty2 finger exit man pwd pwd finger man -l -a -al -> po 2 minusach interpretacja słowa --all -h -> wyświetlanie informacji w innych lokalizacjach -> (z pomocą klawisz

Bardziej szczegółowo

System operacyjny Linux wybrane zagadnienia. Magda Mielczarek Katedra Genetyki Uniwersytet Przyrodniczy we Wrocławiu

System operacyjny Linux wybrane zagadnienia. Magda Mielczarek Katedra Genetyki Uniwersytet Przyrodniczy we Wrocławiu System operacyjny Linux wybrane zagadnienia Magda Mielczarek Katedra Genetyki Uniwersytet Przyrodniczy we Wrocławiu Linux Open Source Stale rozwijany Darmowy (wersje niekomercyjne) Bezpieczny Stabilny

Bardziej szczegółowo

Systemy operacyjne II Laboratorium. Część 1: Pliki wsadowe Windows

Systemy operacyjne II Laboratorium. Część 1: Pliki wsadowe Windows Uniwersytet Rzeszowski Katedra Informatyki Opracował: mgr inż. Przemysław Pardel v1.02 2010 Systemy operacyjne II Laboratorium Część 1: Pliki wsadowe Windows Zagadnienia do zrealizowania (3h) Budowa pliku

Bardziej szczegółowo

skrypt powłoki to plik tekstowy, rozpoczynający się sekwencją: pierwsza linia określa powłokę, w której wykonywany jest skrypt; druga to komentarz

skrypt powłoki to plik tekstowy, rozpoczynający się sekwencją: pierwsza linia określa powłokę, w której wykonywany jest skrypt; druga to komentarz Ćwiczenie 6 Skrypty powłoki - programowanie w powłoce bash 1. Cel ćwiczenia Celem ćwiczenia jest poznanie możliwości powłoki bash od strony programistycznej. System UNIX (Linux) pozwala tworzyć skrypty,

Bardziej szczegółowo

Podstawy użytkowania Linux a

Podstawy użytkowania Linux a Podstawy użytkowania Linux a Systemy Operacyjne Mateusz Hołenko 3 marca 2013 Plan zajęć Rozpoczynanie pracy z systemem Podstawowe polecenia Pomoc systemowa Interpreter poleceń Mateusz Hołenko Podstawy

Bardziej szczegółowo

S P I S POLECEŃ LINUXA

S P I S POLECEŃ LINUXA S P I S POLECEŃ LINUXA Polecenia d l a katalogów Wyświetlanie zawartości katalogów ls ls [opcje][katalog][plik] -a (all) listuje również pliki ukryte zaczynające się znakiem».«-b wyświetla znaki niedrukowalne

Bardziej szczegółowo

#!/bin/sh. if [ "$#"!= "1" ]; then echo "Skrypt uruchamiany z parametrem (sciezka do katalogu)" exit 1 fi

#!/bin/sh. if [ $#!= 1 ]; then echo Skrypt uruchamiany z parametrem (sciezka do katalogu) exit 1 fi Skrypt nr 1 Zmiana nazw wszystkich plików w zadanym katalogu (parametr wywołania skryptu), do których mamy ustawione prawo zapisu, przez dopisanie dodatkowego członu.old. Wcześniej należy skasować wszystkie

Bardziej szczegółowo

JĘZYK SHELL JEST PEŁNYM JĘZYKIEM PROGRAMOWANIA

JĘZYK SHELL JEST PEŁNYM JĘZYKIEM PROGRAMOWANIA JĘZYK SHELL JEST PEŁNYM JĘZYKIEM PROGRAMOWANIA, który zawiera: zmienne, konstrukcje warunkowe i iteracyjne (IF-THEN-ELSE, CASE, DO WHILE, DO UNTIL), konfigurowane środowisko użytkownika. METAZNAKI zestaw

Bardziej szczegółowo

Pracownia Komputerowa wykład III

Pracownia Komputerowa wykład III Pracownia Komputerowa wykład III dr Magdalena Posiadała-Zezula dr Jan Suffczyński 1 Powłoki - rodzaje! W Linux ie mamy kilka powłok do wyboru:! sh : Bourne Shell, oryginalna powłoka systemu unix! csh :

Bardziej szczegółowo

Systemy operacyjne Skrypt do ćwiczeń laboratoryjnych

Systemy operacyjne Skrypt do ćwiczeń laboratoryjnych Systemy operacyjne Skrypt do ćwiczeń laboratoryjnych Cezary Sobaniec $Id: sop1-zadania.lyx,v 1.19 2006/09/26 13:37:25 sobaniec Exp $ Politechnika Poznańska Instytut Informatyki Spis treści 1 Wprowadzenie

Bardziej szczegółowo

Projekty zaliczeniowe Podstawy Programowania 2012/2013

Projekty zaliczeniowe Podstawy Programowania 2012/2013 Projekty zaliczeniowe Podstawy Programowania 2012/2013 0. Zasady ogólne W skład projektu wchodzą następujące elementy: dokładny opis rozwiązywanego problemu opis słowny rozwiązania problemu wraz z pseudokodami

Bardziej szczegółowo

Za pomocą niniejszej instrukcji baza programu MAK zostanie przygotowania do eksportu na METALIB.

Za pomocą niniejszej instrukcji baza programu MAK zostanie przygotowania do eksportu na METALIB. Za pomocą niniejszej instrukcji baza programu MAK zostanie przygotowania do eksportu na METALIB. Przed przystąpieniem do modyfikacji należy koniecznie wykonać kopię zapasową bazy, by w razie nieprzewidzianych

Bardziej szczegółowo

Programowanie w języku Python. Grażyna Koba

Programowanie w języku Python. Grażyna Koba Programowanie w języku Python Grażyna Koba Kilka definicji Program komputerowy to ciąg instrukcji języka programowania, realizujący dany algorytm. Język programowania to zbiór określonych instrukcji i

Bardziej szczegółowo

WINDOWS XP PRO WINDOWS XP PRO

WINDOWS XP PRO WINDOWS XP PRO WINDOWS XP PRO 1 WINDOWS XP PRO PLIK jest to ciąg informacji (bajtów) zapisany na nośniku zewnętrznym (dysku) pod określoną nazwą. Nazwa pliku może składać się z maksymalnie 256 znaków. W Windows XP plik

Bardziej szczegółowo