AP> В сообщении от Wednesday 24 September 2008 16:56:06 Dmitry E. Oboukhov AP> написал(а): AP>>> И как вы на шелле сделаете filter_cmd в том файле, откуда указанную AP>> цепочку AP> вызываете? Будете для каждого фильтра отдельный скрипт AP>> создавать? зачем? напишу НАПРИМЕР так: AP>> AP>> filter_cmd() AP>> { AP>> while read a; do AP>> echo =$a= AP>> done AP>> } AP>> AP>> cmd1|cmd2|filter_cmd|cmd3 AP>> AP>> и оно поставит знаки равно в начале и конце строки :) AP> Это работает в произвольном шелле? Не верю! nbw:[~]$ cat test.sh #!/bin/dash filter_cmd() { while read a; do echo "=$a=" done } ls|filter_cmd|cat nbw:[~]$ dash test.sh =00454997.gif= =004_Bratya_Riko= =1.html= =2006-09-25_019.jpg= ... [off]ох е, сколько мусора скопилось :)[/off] AP> Если язык программирования в том числе лучше выполняет _все_ операции, которые AP> умеет делать шелл, то зачем нужен последний? Именно об этом и топик. AP>> я к нему приделал уведомления всплывающие через libnotify AP>> получилось нечто вроде AP>> AP>> msg=`iconv -t utf8|html2text|еще что-то не помню` AP>> notify-send бла-бла -- $msg AP>> AP>> в чем проблема то перекодировать кодировку? AP> Если у вас этот скрипт вызывается с существенным объемом данных, скажем, AP> тысячу раз в секунду, то вызов немаленького бинаря iconv может стать AP> существенной проблемой. Или линуксовый шелл у нас теперь только для AP> одноюзерских десктопов годится?.. блин ну ежику понятно что когда скорость проблема надо брать другой инструмент. и вполне возможно что и тикль ваш любимый не потянет по скорости в некоторых случаях о чем спор?, AP>> AP>> и бинарный текстовый режим не знаю где нужен AP>> вот построчная буферизация нужна бывает когда протоколы обмена ваяешь AP>> но протоколы это уже явно не шелловая задача (хотя http-smtp сервера на AP>> шелле я где-то видел), но тут read a написать никто не мешает :) AP> Если шелл служит для связки врешних утилит, то он должен уметь "склеивать" AP> _любые_ утилиты. Но, как показывает практика, это не так. как показывает практика универсальных инструментов нет например на тикле нет нормальных регвыражений а еще блин претендует быть языком программирования ;) -- . ''`. Dmitry E. Oboukhov : :’ : unera@debian.org `. `~’ GPGKey: 1024D / F8E26537 2006-11-21 `- 1B23 D4F8 8EC0 D902 0555 E438 AB8C 00CF F8E2 6537
Attachment:
signature.asc
Description: Digital signature