Instrukcja
- Uruchomienie, wyłączenie
- Podczas startu systemu wybieramy za pomocą strzałek system operacyjny Fedora Core lub Ubuntu i naciskamy klawisz Enter.
- Podajemy login i hasło przydzielone przez prowadzącego.
- Login i hasło należy zapamiętać, są one przypisane do danego studenta nie do komputera!
- Po zakończeniu laboratorium. Wyłączamy komputery poleceniem poweroff (podanym z konsoli) lub System->Wyłącz komputer
- Uruchomienie terminala
- W lewym górnym rogu ikona z symbolem Ubuntu (taka okrągła).
- Tam wyszukujemy "Terminal"
- Można ikonę z terminalem przeciągnąć na menu z lewej strony (będziemy go często używać)
- Uruchamiamy terminal
- Organizacja systemu plików
- / - główny katalog
- /home - katalogi użytkowników zwykle identyczne z loginem np /home/ti01
- /tmp - katalog plików tymczasowych
- /media - katalog gdzie automatycznie montowane są urządzenia zewnętrzne (np pendrive, cd, dvd)
- /mnt - montowane inne systemy plików
- /root - katalog domowy administratora
- /boot - zawiera pliki ładowane podczas startu systemu, np. jądro systemu.
- /etc - konfiguracja systemu
- /var - pliki logów lub baz danych
- /bin - pliki uruchamialne
- /lib - biblioteki
- /usr - programy użytkowe
- /dev - urządzenia
- Podstawowe polecenia
- Polecenia i ich parametry oddzielamy spacjami
- man man - Manual, podręcznik na temat podręcznika ;). Ogólnie wydanie komendy man polecenie powinno nam zwrócić informacje na temat danego polecenia
- ls - wyświetlenie zawartości katalogu, zwykle używane z opcją -la powodującą wyświetlenie także plików ukrytych oraz pokazanie atrybutów plików.
- pwd - wyświetlenie ścieżki bieżącego katalogu
- cd - zmiana katalogu np.
- cd (samo bez parametrów) przejście do katalogu domowego użytkownika tak samo jak np cd /home/ti01 lub cd ~
- cd / przejście do katalogu głównego
- cd /home/ti01/kat1 - przejscie do katalogu kat1 podane pełną ścieżką
- cd kat1 przejście do katalogu kat1, zadziała tylko wtedy, kiedy kat1 występuje w bieżącym katalogu, można to sprawdzić przez polecenie ls.
- cd .. przejście katalog wyżej
- cd ../.. przejście dwa poziomy wyżej
- cd ../../../tmp/kat przejście trzy poziomy wyżej i zejście dwa poziomy (tmp/kat) niżej
-
cp położenie/pliku/plik1 polożenie/inne/plik2 - kopiowanie pliku plik1 na plik2 można dodać też położenie pliku jeżeli plik nie znajduje się w katalogu bieżącym lub chcemy by skopiowany był w inne miejsce niż katalog bieżący
-
mv polożenie/pliku/plik1 polożenie/inne/plik2 - przenoszenie pliku
- mkdir tworzenie katalogu
- rm usuwanie
-
ps - wyświetlenie procesów, samo ps wyświetli procesy użytkownika uruchomione z danej konsoli, jednak zwykle używa się ps -efa czyli wyświetlenie wszystkich procesów
-
kill -9 pid_procesu np. kill -9 1234 "zabicie" procesu o numerze 1234.
-
| (pionowa kreska tzw. pipe, "pałka", "rura") służy do przekierowania standardowego wyjścia do standardowego wejścia innego programu. Np.
ls -la | grep bash - > przekierowanie standardowego wyjścia (1) do pliku np ls > plik.txt spowoduje nadpisanie pliku plik.txt tym co normalnie pojawiło by się na ekranie po wydaniu komendy ls
- >> j.w. z tą różnicą że strumień wyjściowy (1) jest dopisywany na koniec pliku plik.txt
- przekierowanie standardowego wyjścia błędów (2) w to samo miejsce gdzie standardowe wyjście (1) to: 2>&1 np: grep blabla * > /tmp/plik 2>&1 przekieruje nam wynik grepa wraz z błędami do pliku /tmp/plik
-
grep - jest programem służącym filtrowaniu tekstu. Wyszukuje te linie które spełniają zadane warunki.
W powyższym przykładzie grep przepuszczał tylko te linie które zawierały słowo bash. Inne opcje to np. grep -i BaSh (czyli nie zwracaj uwagi na wielkość liter), grep -v bash znajdź wszystko oprócz bash.
Grep przyjmuje także na swoje wejście także całe pliki i pełni funkcję wyszukiwania np.
grep "ala ma kota" * przeszuka wszystkie pliki w danym katalogu w poszukiwaniu linii z zawartością "ala ma kota" -
more - program stosowany zwykle w połączeniu z "pipem", po wyświetleniu całego ekranu tekstu zatrzymuje wyświetlanie i czeka na naciśnięcie np. spacji lub enter. np.
ls -la |more Gdy dojdziemy do końca wychodzimy z programu. Można też wyjść za pomocą klawisza "q". -
tree - wyświetli nam katalogi i pliki w postaci drzewka
-
Maski
-
W przykładzie z grepem: grep "ala" * podaliśmy znak * oznacza on przeszukaj wszystkie pliki. Pewne znaki mogą być użyte jako tzw. maski.
-
* - wszystkie znaki
-
*abc - wszystko co kończy się literami abc
-
abc* - wszystko co zaczyna się na abc
-
*abc* - wszystko co zawiera abc
-
?abc - wszystko co kończy się na abc i może mieć co najwyżej jeden dowolny znak z przodu. (ogólnie znak ? zastępuje dowolny jeden znak)
-
plik[0-9].txt wszystkie pliki plik0.txt plik1.txt plik2.txt plik3.txt ... plik9.txt
-
plik[0,9].txt pliki plik0.txt oraz plik9.txt
-
-
Edytor vim
-
Praktycznie w każdym systemie Unix/Linux możemy się spotkać z edytorem vi lub vim (vi - improved)
jest to zaawansowany edytor tekstowy który w zależności od wersji dostarcza takiej funkcjonalności jak:-
kolorowanie składni
-
numerowanie linii
-
autouzupełnianie wyrazów
-
makrorozwinięcia
-
zapamiętywanie makr
-
wykonywanie skryptów
-
odnajdywanie definicji funkcji i wyszukiwanie jej wystąpienia
-
szybkie poruszanie się po edytowanym tekście dzięki możliwości zapamiętywania położenia czy powrotów po skoku.
-
i wiele innych.
-
-
Jest jednak sporo minusów widzianych głównie przez początkujących użytkowników.
-
Przede wszystkim zbyt rozbudowana "klawiszologia" - każda operacja to jest wciśnięcie jakiejś kombinacji klawiszy
-
Dwa tryby, edycji oraz wpisywania.
-
-
Tryb edycji.
-
Przechodzimy za pomocą klawisza ESC tu możemy np:
-
yy - kopiowanie bieżącej linijki
-
p - wstawienie linijki
-
yw - kopiowanie wyrazu
-
p - wstawienie wyrazu
-
dd - usunięcie linijki
-
D - usunięcie tekstu do końca lini
-
P - wstawienie nad daną linią
-
/ szukanie tekstu
-
: wpisanie komendy
-
a,i,A,I,o,O - rozpoczęcie trybu pisania
-
-
-
Komendy (bardzo podstawowe)
-
:w plik1 zapisz do pliku plik1 uwaga! Jeżeli edytowaliśmy plik o innej nazwie to nadal będziemy edytować ten plik powtórne wykonanie samego :w zapisze pod nazwą pierwotną. np. otworzyliśmy za pomocą komendy vim plik0 a potem w edytorze zapiszemy :w plik1 to po wykonaniu samego :w zapisze nam się plik0.
-
:q wyjście z programu
-
:e plik wczytanie pliku.
-
-
-
Sztuczki w konsoli/terminalu
-
strzałka do góry przeglądanie poprzednich poleceń tak by nie wpisywać w kółko tego samego
-
shift pageUp przewijanie tego co nam uciekło
-
gdy wpiszemy część polecenia czy katalogu to naciśnięcie klawisza TAB uzupełni nam resztę lub podpowie jakie są możliwości
-
Gdy zaznaczymy myszką tekst to można go wkleić w inne miejsce za pomocą środkowego klawisza myszy (i to nie tylko w konsoli)
-
-
Ćwiczenie do wykonania
-
W sprawozdaniu mają się znaleźć po każdym podpunkcie polecenia jakimi wykonaliście dany podpunkt oraz wynik działania np. poleceniem tree albo zawartość pliku np ps.txt.
- Wszystkie operacje wykonujemy w konsoli/terminalu (nie klikając)
- przy podawaniu położenia plików używamy ścieżek względnych
- w swoim katalogu domowym stworzyć katalog lab2 a w nim trzy katalogi a, b i c (0,5)
- w katalogu lab2 za pomocą edytora vim stworzyć plik1.txt z dowolnym tekstem (1)
- przenieść plik1.txt do katalogu a (0,5)
- skopiować z katalogu a plik1.txt do katalogu b jako plik2.txt (0,5)
- w katalogu c stworzyć plik ps.txt zawierający wynik polecenia ps -efa (jednym poleceniem, nie przez kopiowanie) (0,5)
- Stworzyć w katalogu lab2 pliki o nazwach: abc1 abc2 abc3 cbd1 cbd2 cb3 abcd (można użyć polecenia touch) (0,5)
- skopiować (jednym poleceniem) do katalogu a wszystkie pliki zaczynające się na ab (0,5)
- skopiować (jednym poleceniem) do katalogu b wszystkie pliki kończące się cyfrą (0,5)
- skopiować (jednym poleceniem) do katalogu c wszystkie pliki zawierające w nazwie bc (0,5)
-
- Sprawozdanie
- Należy wgrać na platformę moodle najpóźniej do końca dnia następnego.
- Zawrzeć wstęp teoretyczny jak i polecenia jakimi posługiwaliśmy się podczas realizacji ćwiczenia
- Umieścić także dokumentację przebiegu ćwiczenia w formie np. zrzutów ekranu (w formie tekstowej) lub wyświetlenia zawartości katalogów choćby poleceniem tree.
- Wnioski