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] reprezentuje dokładnie jeden znak z przedziału [!abcde] reprezentuje dowolny niewymieniony znak [!a-e] reprezentuje znak nienależący do przedziału {plik,file} reprezentuje dowolny z wymienionych ciągów
Znaki globalne w Linuxie cd. Przykłady użycia znaków globalnych: * reprezentuje wszystkie pliki *.bmp reprezentuje wszystkie pliki kończące się na.bmp?[0-9][a-d] reprezentuje plik o trzyznakowej nazwie, gdzie pierwszy znak jest dowolny, drugi jest cyfrą, zaś trzeci literą z przedziału a-d {nowy,new}*.txt reprezentuje wszystkie pliki zaczynające się od nowy lub new będące plikami txt
Wyszukiwanie plików Polecenie find prowadzi wyszukiwanie według zadanych kryteriów od wskazanego katalogu "w dół", uwzględniając wszystkie podkatalogi (rekurencyjnie). Jeżeli wskazanym katalogiem jest /, wówczas przeszukiwany jest cały system plików. Przykłady: $ find ~ -name passwd $ find ~ -name "p*" $ find / -name "pass*" W powyższym zapisie tylda "~" oznacza katalog domowy użytkownika, czyli punkt rozpoczęcia poszukiwań, -name parametr określający wyszukiwanie według nazwy. Jeżeli nie podamy katalogu rozpoczęcia poszukiwań, find automatycznie przyjmie bieżący. Kropka oznacz również bieżący katalog.
Wybrane kryteria wyszukiwania -name wyszukuje plik o określonej nazwie -type wyszukuje pliki, których typ jest określony jako: d katalog f plik normalny b plik blokowy c plik znakowy l dowiązanie symboliczne -path wzorzec wyszukuje pliki, których ścieżka dostępu pasuje do wzorca -links wyszukuje pliki z liczbą N dowiązań do plików -size wyszukuje pliki, które mają wielkość N -user wyszukuje pliki, które należą do użytkownika -perm wyszukuje pliki, które mają prawa dostępu określone jako tryb -atime wyszukuje pliki, które były otwierane w N dniach -mtime wyszukuje pliki które zostały zmodyfikowane w N dniach
Przykładowe zastosowanie $ find. type d $ find. name piotr1 $ find. type d -print $ find. mtime +20 -print $ find /home -mtime 0 print $ find. type d -ok. chmod 770 {} \; $ find /home name *.c print $ find ~ -name p* print $ find. name piotr1 more $ find. type d exec chmod 770 {} \; $ find /mp3-collection -name pli[kz] -and -size 1k $ find /mp3-collection -name pli[kz] -or -size 1k
Uprawnienia do plików i katalogów Do każdego pliku w systemie jest przypisany identyfikator: właściciela u (user) użytkownika, który stworzył ten plik grupy g (group) użytkowników należących do tej samej grupy co twórca pozostałych o (others) pozostałych użytkowników Istnieją 3 podstawowe prawa dostępu: r (read) prawo do odczytu; w (write) prawo do zapisu; x (execute) prawo do uruchomienia jeśli plik jest programem; ls -l bit 1: d (directory) katalog - plik l (link) link do pliku
Administrowanie uprawnieniami Administrowanie uprawnieniami jest możliwe za pomocą polecenia chmod, np.: sudo chmod ugo+w plik.txt
Administrowanie uprawnieniami cd. Każdy zestaw praw dostępu można przedstawić za pomocą jednej cyfry: --- 0 brak praw; --x -w- -rx r-- r-x rw- 1 prawo do uruchomienia; 2 prawo do zapisu; 3 prawo do zapisu i uruchomienia; 4 prawo do odczytu; 5 prawo do odczytu i uruchomienia; 6 prawo do odczytu i zapisu; rwx 7 prawo do odczytu, zapisu i uruchomienia.
Administrowanie uprawnieniami cd. W poleceniu chmod można podać uprawnienia w postaci liczby trzycyfrowej, w której kolejne cyfry od lewej strony oznaczają uprawnienia dla właściciela, grupy i pozostałych użytkowników. sudo chmod 750 plik.txt
Przekierowanie strumienia danych
Przekierowanie strumienia danych cd.
Potokowanie strumienia danych Zastosowanie znaku pozwala na łączenie wyjścia jednego polecenia z wejściem innego. Dane wygenerowane za pomocą pierwszego polecenia przekazane zostają na wejście następnego polecenia i po przetworzeniu przekazane za wejście kolejnego lub na ekran. Tego typu przetwarzanie danych nazywane jest potokowaniem.
Polecenia często wykorzystywane w potokach. more służy do przeglądania tekstu strona po stronie, jeden ekran na raz, przewijanie stron możliwe tylko do przodu sudo ls la more less podobnie jak more, ale przewijanie stron możliwe jest w obu kierunkach sudo ls la less cat polecenie wyświetla na ekranie zawartość pliku tekstowego sudo cat /etc/passwd less
Polecenia często wykorzystywane w potokach. grep przeszukuje wskazany strumień danych, szukając linii zawierających ciąg znaków pasujących do podanego wzorca sudo cat /etc/passwd grep uczen wc wypisuje liczbę bajtów, słów lub linii w plikach sudo ls la wc -l sort sortuje, zlepia lub porównuje wszystkie linie z podanych plików sudo cat /etc/passwd sort
Polecenia często wykorzystywane w potokach. tee rozgałęzienie strumienia. Pobiera dane ze strumienia wejściowego i tworzy dwa strumienie wyjściowe - jeden podłączony do standardowego wyjścia, a drugi do wskazanego pliku sudo cat /etc/passwd sort tee alfabetycznie Generowanie zestawu danych będących listą zbiorów w katalogu bieżącym (każdy w nowej linii). Dane przekazane na wejście polecenia grep. Polecenie to wyszuka linie zawierające ciąg znaków plik. Polecenie wc zliczy linie w zbiorze danych uzyskanych na wejściu polecenia grep. W wyniku przetwarzania danych przez cały potok zostanie uzyskana liczba plików zawierających w nazwie ciąg znaków plik. ls la grep plik wc l
Archiwizacja zbiorów systemu Linux Podstawowym narzędziem do obsługi archiwów jest program tar. Normalnie tar tworzy nieskompresowane archiwum. W archiwum możne znajdować się wiele plików i katalogów. Program tar domyślnie tworzy archiwum rekurencyjne (z podkatalogami), umieszczając w nim wszystko, co znajdzie się we wskazanym katalogu (w tym pliki i katalogi ukryte). Składnia polecenia tar jest następująca: tar opcje nazwa_archiwum plik np.: tar cvf arch.tar plik1.txt Najczęściej używane opcje polecenia tar to: - c tworzenie archiwum; - v podczas przetwarzania archiwum wyświetlane będą nazwy zbiorów - f użycie wskazanego pliku jako archiwum; - x wyodrębnienie zbiorów z archiwum