[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Нужен ли bash



Hello!

В сообщении от Wednesday 24 September 2008 16:56:06 Dmitry E. Oboukhov 
написал(а):
> AP> И как вы на шелле сделаете filter_cmd в том файле, откуда указанную
> цепочку AP> вызываете? Будете для каждого фильтра отдельный скрипт
> создавать? зачем? напишу НАПРИМЕР так:
>
> filter_cmd()
> {
>         while read a; do
>                 echo =$a=
>         done
> }
>
> cmd1|cmd2|filter_cmd|cmd3
>
> и оно поставит знаки равно в начале и конце строки :)

Это работает в произвольном шелле? Не верю!

>
> AP> А если
> AP> фильтры создаются при обращении к ним? К примеру, на тикле я могу
> определить AP> обработчик, который выполнится при попытке обращения к
> несуществующей AP> функции, создаст нужную функцию и выполнит ее. А вы что
> будете делать?.. ну да, когда тебе нужен именно язык программирования, кто
> ж спорит он круче
> у него типы данных есть, функции, лябмды итп
> только речь то не о том идет

Если язык программирования в том числе лучше выполняет _все_ операции, которые 
умеет делать шелл, то зачем нужен последний? Именно об этом и топик.

> я к нему приделал уведомления всплывающие через libnotify
> получилось нечто вроде
>
> msg=`iconv -t utf8|html2text|еще что-то не помню`
> notify-send бла-бла -- $msg
>
> в чем проблема то перекодировать кодировку?

Если у вас этот скрипт вызывается с существенным объемом данных, скажем, 
тысячу раз в секунду, то вызов немаленького бинаря iconv может стать 
существенной проблемой. Или линуксовый шелл у нас теперь только для 
одноюзерских десктопов годится?..

>
> и бинарный текстовый режим не знаю где нужен
> вот построчная буферизация нужна бывает когда протоколы обмена ваяешь
> но протоколы это уже явно не шелловая задача (хотя http-smtp сервера на
> шелле я где-то видел), но тут read a написать никто не мешает :)

Если шелл служит для связки врешних утилит, то он должен уметь "склеивать" 
_любые_ утилиты. Но, как показывает практика, это не так.

Best regards, Alexey.


Reply to: