|
|
ru.linux- RU.LINUX --------------------------------------------------------------------- From : Artem Chuprina 2:5020/400 12 Oct 2006 10:50:11 To : Aleksey Barabanov Subject : Re: tcsh vs bash -------------------------------------------------------------------------------- Aleksey Barabanov -> Victor Wagner @ Tue, 10 Oct 2006 15:01:30 +0000 (UTC): >> А вообще zsh с тем же успехом выполнит скрипты классического Bourne >> Shell. Там слишком ограниченное подмножество. >> А вообще шелл предназначен для того чтобы в нем работать, а не для того AB> Что значит работать в шелл. Давайте определим. Предлагайте круг задач. AB> Только учтите, что консоль уже сильно не актуальна. Hапример у меня с AB> некоторых пор X на сервер стандарт. Т.е. сильно в шелле напрягаться не AB> приходится. Самое модное это сдвоенный таб ;) Hу и у меня в норме иксы есть. И хрен ли толку? Команду-то где набирать? Hет, можно, конечно, и в окошке диалога с fvwm - но это, как Витус выражается, что, руками каждую букву набирать!? У меня, собственно, есть специально обученный инструмент "запустить одну команду, введенную интерактивно с дополнением по табуляции". Дополнение и редактирование командной строки, естественно, осуществляются средствами zsh, как самого мощного (и, похоже, единственного, кого можно обучить после запуска команды самоустраниться автомагически, без дополнительных ручных пинков типа ввода &). А поскольку иксы, то в xterm, естественно. Только окошко для ввода, если для запуска гуевой программы, делается высотой не 50, как для более интерактивной работы, а всего 6 строк. И какие этой конструкции сэр предложит альтернативы? Все zero-click solutions, естественно, реализованы. Для часто набираемых команд без параметров, естествено, хотки или двух-трехходовки через менюшки fvwm, естественно, тоже. Для всего остального альтернативы, пожалуйста. Задачи - бытовые. Отредактировать указанный файл, скопировать что-то куда-то, послушать конкретный музыкальный файл, найти нужное письмо (grep по почтовому ящику, если сработает, сработает на порядок быстрее, чем почтовый клиент), найти слово в словаре, посмотреть фотки с конкретного события, почитать хранящийся на диске html, почитать документацию на нужную функцию или конфиг (последнее - это уже по работе, не надо _слишком_ узко понимать слово "бытовые"), распечатать файлик (не задумываясь о том, что это за файлик - не барское это дело, cups сам разберется). Оно, конечно, будь у меня в распоряжении только солярковский /bin/sh, я бы, наверное, кнопкой Ctrl-O пользовался и mc каким-нибудь (как в досе раньше пользовался vc - сейчас и в нем bash предпочитаю; предпочитал бы zsh, да лениво его в djgpp портировать). И то не факт, что xterm с мышой не удобнее будет, даже с солярковским sh в нем. Hо я не ограничен, по счастью, солярковским sh. >> чтобы на нем портабельные скрипты писать. Потому что портабельно всё >> равно не получится. Поэтому скрипты надо писать на perl, tcl, python, >> ruby или scheme. AB> Спорно. Периодически делаются попытки включить что-то из перечисленного в AB> ядро системы. Hо тут сразу становится видимым одно противоречие. AB> Универсальные языки стремятся за счет библиотек покрыть как можно более AB> широкую сферу применимости. Для них это жизненно важно. А для системного AB> программирования нужно ограниченное но достаточное подмножество. AB> Такого языка нет! Пока нет. Смотря что такое "системное программирование". Если сисадминские функции, то я бы, пожалуй, в качестве основного предпочел tcl. Простой и внятный (привет перлу и sh) компактный (привет удаву) синтаксис, все необходимое для задач управления системой встроено в базовый комплект (минимальный комплект покрывает шелл по функциональности, средства сетевого программирования в комплекте). В качестве энд-юзерского скриптования, кстати, тоже - у меня вон ту вышеописанную запускалку (которая, кстати, прозрачно запускается на указанном хосте в указанной локали с соответствующей подстановкой шрифтов, если речь идет об интерактивной работе) запускает, в свою очередь, модуль к fvwm, писанный на tcl (гуевая часть пользуется Tk, естественно). Полтораста строк включают гуй с инкрементным поиском хоста, разбором вариантов "на одну гуевую команду - на одну терминальную команду - на несколько терминальных команд", обработкой указания локали и хелпом по оному указанию. Гуй - аккуратно вылизанный под девизом "тебя должно быть видно не более, чем необходимо в данный момент". -- Artem Chuprina RFC2822: <ran{}ran.pp.ru> Jabber: ran@jabber.ran.pp.ru А еще следует потребовать, чтобы программисты, перед тем, как писать код, внимательно прочли спецификацию: с сыром - это чизбургер. Игус в <Pine.LNX.4.44.0401231840020.15582-100000@moon> --- ifmail v.2.15dev5.3 * Origin: Leninsky 45 home network (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.linux/114776be2fba6.html, оценка из 5, голосов 10
|