bash (3)


Bourne Again SHell - BASH

  Strefa Linuksa Strona główna  |  Spis treści  |  O autorze  |  Księga gości  |  Sonda  |  Forum  |  Reklama  |  Kontakt  |  Linki   |  BASH Słowo BASH jest skrótem od Bourne Again SHell. Mówi on o autorze
pierwowzoru (Steve Bourne). Jednocześnie jest angielską grą słów i oznacza
"nowo narodzony sh" lub "nowo narodzony shell Bourne'a". Już
to zapowiada, że Bash prezentuje nowe możliwości w porównaniu do pierwotnego
shella.Interpreter poleceń BASH pozwala na kilka
ciekawych rzeczy. Można
korzystać z historii poleceń (strzałka w górę i dół). Dzięki temu nie
musisz powtórnie wklepywać długiego polecenia, gdy popełnisz literówkę. Można
wywoływać kilka poleceń po kolei, łącząc je znakiem średnika - ;. Można
też łączyć programy nienazwanymi potokami (FIFO), kierując wyjście jednego
w wejście drugiego, używając znaku | (pionowa kreska). Wynik pracy wielu
poleceń można zapisać w pliku poleceniem tee. Można też kierować wyjście
programu do pliku albo skierować plik na wejście (znaki < i >) bądź
dopisywać do pliku (>>). Można
też uruchamiać programy w tle dopisując znak & (ampersand) na końcu
polecenia. Wszystko to pozwala na składanie poleceń w złożone zestawy, ułatwiające
wykonanie określonego zadania.
Istnieje rozszerzenie wzięte z powłoki C, zwane brace expansion. Pozwala na
zautomatyzowanie czynności, w których jakaś część nazwy powtarza się
wielokrotnie. Polecenie jest wywoływane wielokrotnie, jeden raz dla każdej możliwości.
Przykładowo, wpisanie mkdir katalog_{pierwszy,drugi,trzeci} spowoduje
utworzenie trzech katalogów - katalog_pierwszy, katalog_drugi i katalog_trzeci.
Możliwe jest wykonywanie operacji arytmetycznych. Jest to usprawnienie
zaczerpnięte z powłoki Korna. Polecenia arytmetyczne wykonuje się, wstawiając
je w obrębie znaków $((...)) lub $[...]. Obsługiwane jest większość
operatorów arytmetycznych Ansi C. Obsługiwana też jest kolejność działań.
Przykładowo, polecenie echo $((2 + 2)) spowoduje, że na ekranie pojawi
się 4 :)
Kolejną ciekawą sprawą jest podstawianie procesów. Dzięki niemu można
wyjście z jednego procesu doprowadzić do innego procesu. Służy do tego
polecenie $(...) lub '...'. Typowym przykładem jest polecenie kill $(pidof
nazwa_procesu), które zamknie proces o nazwie nazwa_procesu (nie musisz
podawać numeru PID procesu).
Oczywiście, możliwe jest tworzenie skryptów. Z zewnętrznego punktu widzenia
skrypt wygląda identycznie jak binarium wykonywalne: plik z ustawionym
atrybutem x. Dopiero wewnątrz widoczne są zmiany: na początku pliku znajdują
się dwa znaki: #! , a po nich nazwa interpretera poleceń, np. /bin/sh. Tak więc
pierwsza linia skryptu może mieć postać: #!/bin/sh, #!/bin/bash,
#!/usr/bin/perl lub
cokolwiek innego. Skrypt pisze się oczywiście w języku interpretera, który
wybrałeś - w przypadku basha składnia jest w miarę podobna do dosowej. Znak
# powoduje zakomentowanie reszty linii na prawo od znaku.
Jeśli chcecie pisać skomplikowane skrypty, musicie niestety skorzystać z
literatury, np. "Programowanie w shellu" wydawnictwa Mikom, ew.
siedzieć godzinami przed manualem ;-)
Strona testowana z Mozillą 0.9.1, Konquerorem, Lynxem, Linksem oraz IE 5.5.










w górę


Copyright © 2000-2001 Marek Materzok  Wszelkie Prawa Zastrzeżone.

Wyszukiwarka

Podobne podstrony:
Powłoka BASH
bash (4)
BASH Programowanie w powloce
Bash Prog Intro HOWTO
Bash Tutorial [EN]
Bash Style Guide an Coding Standard [EN]
bash help shhet shortcuts [EN]
BASH Skrypty
bash org pl śmieszne
bash
bash Wprowadzenie?shwp
Bash History Cheat Sheet [EN]
BASH Bourne Again SHell
2005 11 Discovery Scripts Bash Based Hardware Detection for Pci and Usb
2005 11 Discovery Scripts Bash Based Hardware Detection for Pci and Usb

więcej podobnych podstron