You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
ÞÍÈÊÑÎÈÄ<br />
ÕÀÊÅÐ/¹01(61)/2004<br />
Andrushock (andrushock@real.xakep.ru)<br />
ÊÓÐÑ ÂÛÆÈÂÀÍÈß<br />
 ÊÎÍÑÎËÈ<br />
CENSORED<br />
80<br />
Ä<br />
àé-êà ÿ ïîïðîáóþ óãàäàòü, êàê ñåé÷àñ âûãëÿäèò òâîé ðàáî÷èé ñòîë. Òýêñ... Ìîäíûé äèñïåò÷åð îêîí, àíòèàëüÿñíûå øðèôòû, èêîíêè ñ<br />
www.kdelook.org, òðàíñïàðåíòíûå òåðìèíàëêè, gkrellm â ïðàâîì óãëó, íó è, êîíå÷íî æå, ïîëóîáíàæåííàÿ äåâèöà ñ òîìíûì âçîðîì â<br />
êà÷åñòâå îáîåâ. ×òî, â äåñÿòêó È íåìóäðåíî - ñåé÷àñ èìåííî òàê âûãëÿäèò ïîäàâëÿþùåå áîëüøèíñòâî þíèêñîèäíûõ äåñêòîïîâ.<br />
Ñòîèò îòìåòèòü, ÷òî áëàãîäàðÿ ãðàôè÷åñêèì îáîëî÷êàì íà÷àëñÿ íàñòîÿùèé áóì þíèêñîâ, êîòîðûé ïðîäîëæàåòñÿ è ñåé÷àñ. Íî ðå÷ü â ýòîé<br />
ñòàòüå ïîéäåò ñîâñåì î äðóãèõ îáîëî÷êàõ - îáîëî÷êàõ êîìàíäíîé ñòðîêè, ãðàìîòíî èñïîëüçóÿ ïðåèìóùåñòâà êîòîðûõ, òû ñìîæåøü âûäåëèòüñÿ<br />
èç îáùåé ìàññû, ïî÷óâñòâóåøü èñòèííóþ ìîùü *nix è â ðàçû ïîâûñèøü ñâîè ïðîãðàììåðñêèå íàâûêè!<br />
ÈÇÓ×ÀÅÌ ÊÎÌÀÍÄÍÛÉ ÈÍÒÅÐÏÐÅÒÀÒÎÐ ZSH<br />
ØÅËË ØÅËËÓ ÐÎÇÍÜ<br />
Á<br />
Øåëë aka êîìàíäíûé èíòåðïðåòàòîð<br />
- ýòî ïðîãðàììà, âûïîëíÿþùàÿ<br />
áåç ïðåäâàðèòåëüíîé<br />
êîìïèëÿöèè ââîäèìûå<br />
ïîëüçîâàòåëåì êîìàíäû ëèáî<br />
ñöåíàðèè (ñêðèïòû), ñîñòîÿùèå<br />
èç íàáîðà ïîñëåäîâàòåëüíûõ<br />
êîìàíä. Îñíîâîïîëîæíèêàìè<br />
îáîëî÷åê áûëè Ñòåôåí Áóðí (Stephen R.<br />
Bourne) - ñîçäàòåëü Bourne Shell (sh) è Óèëüÿì<br />
Äæîé (William N. Joy), ðàçðàáîòàâøèé C<br />
Shell (csh) â óíèâåðñèòåòå Áåðêëè ñïåöèàëüíî<br />
äëÿ âåðñèè BSD UNIX. Çà òðèäöàòü ñ ëèøíèì<br />
ëåò ñóùåñòâîâàíèÿ UNIX-ñèñòåì áûëî<br />
íàïèñàíî îãðîìíîå êîëè÷åñòâî ðàçëè÷íûõ<br />
http://zsh.sunsite.dk/<br />
www.faqs.org/faqs/unix-faq/shell/zsh/<br />
www.acm.uiuc.edu/workshops/zsh/toc.html<br />
http://adamspiers.org/computing/zsh/<br />
http://freebsd.by.ru/refs/zsh00.html<br />
http://linuxshop.ru/unix4all/cid=26&id=209<br />
www.daemonnews.org/199910/zsh.html<br />
http://zsh.sourceforge.net/Guide/zshguide.html<br />
http://www-106.ibm.com/developerworks/library/lz.html<br />
èíòåðïðåòàòîðîâ êîìàíäíîé ñòðîêè. Âñå îíè<br />
ðàáîòàþò ïðèìåðíî îäèíàêîâî äëÿ áîëüøèíñòâà<br />
áàçîâûõ äåéñòâèé è êîìàíä, à îñíîâíûå<br />
ðàçëè÷èÿ ïðîÿâëÿþòñÿ òîëüêî â ïðîöåññå ðàáîòû.<br />
Ýòî ñäåëàíî äëÿ òîãî, ÷òîáû ïîëüçîâàòåëè<br />
áåç îñîáîãî òðóäà ìîãëè ïåðåõîäèòü îò<br />
èñïîëüçîâàíèÿ îäíîãî øåëëà ê äðóãîìó. Â<br />
ñîâðåìåííûõ äèñòðèáóòèâàõ ìîæíî âñòðåòèòü<br />
òàêèå îáîëî÷êè, êàê ash, bash, csh,<br />
pdksh (îáùåäîñòóïíàÿ ðåàëèçàöèÿ Korn<br />
Shell), sash, tcsh è zsh. Ðàçðàáîòêà áîëüøèíñòâà<br />
èç íèõ ïðîèñõîäèò êðàéíå ìåäëåííî è<br />
ñâîäèòñÿ, êàê ïðàâèëî, ê çàëàòûâàíèþ äûð<br />
ðàçëè÷íîãî ðàäèóñà :).<br />
ÎÄÀ ZSHELL'Ó<br />
Zsh - ýòî îäèí èç ñàìûõ íîâûõ è áûñòðîðàçâèâàþùèõñÿ<br />
êîìàíäíûõ èíòåðïðåòàòîðîâ ñ<br />
ïîëíîñòüþ ïðîãðàììíûì èíòåðôåéñîì (âñå,<br />
÷òî åñòü â îáîëî÷êå, ìîæåò áûòü íàñòðîåíî<br />
ïî óñìîòðåíèþ ïîëüçîâàòåëÿ), èìåþùèé ìíîæåñòâî<br />
èíòåðåñíûõ âîçìîæíîñòåé. Èçíà÷àëüíî<br />
ñîçäàâàåìûé êàê èíòåðïðåòàòîð, ñîâìåñòèìûé<br />
ñ îáîëî÷êîé Êîðíà, zsh àêêóìóëèðóåò â<br />
ñåáå âñå ëó÷øåå, ÷òî åñòü â bash, ksh è tcsh.<br />
Íèæå ïåðå÷èñëþ íåêîòîðûå ñâîéñòâà è<br />
ïðåèìóùåñòâà zsh ïî ñðàâíåíèþ ñ äðóãèìè<br />
îáîëî÷êàìè:<br />
- ðàñøèðåííîå ðåäàêòèðîâàíèå êîìàíäíîé<br />
ñòðîêè;<br />
- íàñòðàèâàåìîå àâòîäîïîëíåíèå êîìàíä,<br />
îïöèé, ñîîáùåíèé, man-ñòðàíèö, äîìåííûõ<br />
èìåí è ÷åãî äóøå óãîäíî;<br />
- óëó÷øåííîå ðàñêðûòèå èìåí ôàéëîâ;<br />
- õåøèðîâàííûå êàòàëîãè;<br />
- ïðîâåðêà ïðàâîïèñàíèÿ;<br />
- ìíîæåñòâåííûå ïåðåíàïðàâëåíèÿ (êîìàíäó<br />
tee ìîæíî áîëüøå íå èñïîëüçîâàòü);<br />
- ãèáêàÿ ðàáîòà ñ ìàññèâàìè (âêëþ÷àÿ îáðàòíîå<br />
èíäåêñèðîâàíèå);<br />
- áîëüøèå âîçìîæíîñòè ïî ðåøåíèþ çàäà÷<br />
öåëî÷èñëåííîé àðèôìåòèêè;<br />
- ÷èñëî âñòðîåííûõ êîìàíä ïðèìåðíî ðàâíî<br />
ñóììàðíîìó ðàçìåðó êîìàíä â bash, ksh<br />
è tcsh;<br />
- ìîäóëüíàÿ àðõèòåêòóðà.<br />
Ýòîò ñïèñîê ìîæíî ïðîäîëæàòü åùå<br />
î÷åíü äîëãî. ß óæå íå ãîâîðþ ïðî òàêèå<br />
ñâîéñòâà, êîòîðûå ÿâëÿþòñÿ îáùèìè äëÿ<br />
bash, ksh è tcsh: óïðàâëåíèå çàäàíèÿìè, èñòîðèÿ<br />
ââåäåííûõ ïîëüçîâàòåëåì êîìàíä,<br />
áèíäèíã êëàâèø, ïåðèîäè÷åñêèå ñîáûòèÿ,<br />
ðàáîòà ñ ïñåâäîíèìàìè êîìàíä è êîíâåéåðàìè.<br />
Ñî âñåìè ýòèìè çàäà÷àìè òàêæå<br />
ïðåêðàñíî ñïðàâëÿåòñÿ zsh.