|
|
Kurs Bash'a (czΩ╢µ I)
Bash (Bourne Again SHell) to najpopularniejsza obecnie pow│oka dla Linuxowego trybu textowego. Obs│uga bash'a przypomina trochΩ obs│ugΩ DOS'a - wpisujemy polecenia, a ich wyniki ogl▒damy w postaci textowej. Pos│ugiwanie siΩ trybem textowym jest co prawda trudniejsze ni┐ obs│uga r≤┐nego rodzaju system≤w okienkowych, lecz tryb ten posiada o wiele wiΩksze mo┐liwo╢ci. W tym kursie postaram siΩ opisaµ wszelkie aspekty u┐ywania bash'a - od codziennej pracy z systemem plik≤w a┐ do pisania r≤┐nego rodzaju skrypt≤w i programik≤w. A wiΩc do rzeczy!
Po uruchomieniu Linuxa, podaniu logina i has│a powinni╢my zobaczyµ tzw. znak zachΩty. Standardowo wygl▒da on tak:
[user@host katalog]$
Pierwszy element oznacza nazwΩ u┐ytkownika (login) i nazwΩ komputera, na kt≤rym pracujemy. Po spacji wypisywany jest aktualny katalog. Znak $ oddziela czΩ╢µ "informacyjn▒" od linii komand. Spr≤bujmy wiΩc wykonaµ najprostsz▒ komendΩ:
pwd
Wypisze ona pe│n▒ ╢cie┐kΩ do katalogu, w kt≤rym siΩ znajdujemy, przyk│adowo:
/home/user
Pierwsze co zauwa┐amy, to to, ┐e znakiem rozdzielaj▒cym nazwy katalog≤w jest "/", a nie "\" jak w Win/Dos.
Utw≤rzmy teraz nowy katalog komend▒:
mkdir katalog
i przejd╝my do niego komend▒:
cd katalog
Sprawd╝my, czy wszystko posz│o zgodnie z planem znan▒ ju┐ komend▒ pwd.
Je╢li tak, to spr≤bujmy utworzyµ nowy, czysty plik. Mo┐na to zrobiµ wydaj▒c polecenie:
touch plik
Komenda ta w zasadzie s│u┐y do zmiany daty ostatniej modyfikacji pliku o nazwie plik na bie┐▒c▒ datΩ systemow▒. Je╢li jednak podamy nazwΩ nieistniej▒cego jeszcze pliku, to zostanie utworzony nowy, czysty zbi≤r. Utw≤rzmy jeszcze jeden plik, tym razem jednak przez skopiowanie poprzedniego. S│u┐y do tego polecenie:
cp plik plik2
Mo┐na j± stosowaµ w podobny spos≤b r≤wnie┐ do katalog≤w, lecz w takim przypadku nale┐y przed nazw± katalogu ╝r≤d│owego dodaµ -r, co powoduje kopiowanie rekursywne, czyli wraz z ca│▒ zawarto╢ci▒. Teraz pierwszy plik jest nam ju┐ nie potrzebny, wiΩc usu±my go komend▒:
rm plik
Podobny do poprzednich dw≤ch polece± wynik mo┐na otrzymaµ po prostu zmieniaj▒c nazwΩ pliku. S│u┐y do tego komenda odpowiedzialna r≤wnie┐ za przenoszenie plik≤w i katalog≤w. Spr≤bujmy teraz zmieniµ nazwΩ naszego plik2 na plik:
mv plik2 plik
Sprawdziµ, czy nasze polecenia zadzia│a│y prawid│owo mo┐emy wydaj▒c polecenie:
ls -al
Polecenie to wy╢wietla wszystkie pliki i katalogi znajduj▒ce siΩ w katalogu bie┐▒cym. Prze│▒cznik -a informuje system o tym, ┐e nale┐y wy╢wietliµ r≤wnie┐ pliki ukryte (te, kt≤rych nazwa zaczyna siΩ od kropki), a -l powoduje wy╢wietlenie dodatkowych informacji. Wynikiem naszego polecenia powinno byµ kilka linijek o nastΩpuj▒cej konstrukcji:
-rw-rw-r-- 1 user group 0 Mar 20 12:44 plik
Pierwszy znak oznacza typ:
- zwyk│y plik,
d katalog,
l │▒cze symboliczne (odpowiednik windowsowego skr≤tu).
Kolejne 9 znak≤w to uprawnienia. Pierwsze 3 okre╢laj▒ uprawnienia w│a╢ciciela pliku, kolejne 3 uprawnienia grupy, do kt≤rej w│a╢ciciel nale┐y, a ostatnie 3 dotycz▒ pozosta│ych u┐ytkownik≤w. Rozr≤┐niamy 3 rodzaje uprawnie±:
r mo┐liwo╢µ odczytu,
w mo┐liwo╢µ zapisu,
x mo┐liwo╢µ uruchamiania (plik jest traktowany jako program).
Dalej widzimy ilo╢µ innych plik≤w, kt≤re wskazuj▒ nasz plik (tzw. twarde linki). Twarde linki, w przeciwie±stwie do link≤w symbolicznych, bΩd▒ dzia│aµ nawet po usuniΩciu pliku docelowego, poniewa┐ dopiero skasowanie wszystkich twardych odno╢nik≤w powoduje fizyczne usuniΩcie pliku z dysku. P≤╝niej widzimy nazwΩ w│a╢ciciela pliku i grupy, do kt≤rej on nale┐y, rozmiar w bajtach, datΩ ostatniej modyfikacji i na ko±cu nazwΩ pliku.
Utw≤rzmy teraz twardy link o nazwie link do naszego plik:
ln plik link
Linki symboliczne tworzymy t▒ sam▒ komend▒ z dodanym prze│▒cznikiem -s.
Teraz czas po sobie posprz▒taµ. Przejd╝my do katalogu nadrzΩdnego:
cd ..
i usu±my wszystko, co znajduje siΩ w utworzonym przez nas katalogu katalog:
rm -r katalog
Opcja -r powoduje usuniΩcie katalogu rekursywnie.
Powy┐ej przedstawione zosta│y najbardziej podstawowe polecenia (narzΩdzia) linuxowego trybu textowego. W nastΩpnym odcinku zajmiemy siΩ bardziej skomplikowanym ich zastosowaniem oraz rozpoczniemy pisanie najprostszych skrypt≤w.
Golish
golish@inbox.pl
|