|
ru.linux- RU.LINUX --------------------------------------------------------------------- From : Ruslan Kosolapov 2:5020/400 10 Oct 2006 14:23:00 To : Aleksey Barabanov Subject : Re: tcsh vs bash -------------------------------------------------------------------------------- ==[ Aleksey -> Ruslan: >> >> DV>> Что скажете? :) >> >> AV> Думаешь, пора? Hу ладно... bash - ацтой :-) >> >> Все равно zsh круче обоих. >> AB> А давайте так. Мне надо сделать скрипт, который с >> AB> минимальными проблемами должен работать везде. Hа чем я его >> AB> должен написать? >> Хоть на чём. "Везде" включает в себя винду, верно? AB> Это с чего? С определения слова "везде". AB> Кто сказал, что в винде есть полнофункциональная стандартная AB> оболочка? Да и какое отношение винда имеет к юниксам? Как-будто линукс намного больше юникс, чем винда... SFU, как и posix-подсистема - это, если не ошибаюсь, стандартные вещи. Программирование на шелле заключается в вызове команд, и собственно сам шелл тут мало роялит. >> AB> Imho на подмножестве bash. Т.е. все кроме bash чисто чешуя. >> По тестам zsh более posix, чем bash. AB> А это зачем? Это лишняя сущность ;) Определяй тогда слово "везде". >> И того, и другого по дефолту много где нет. /bin/sh тоже везде >> разный. AB> Да с какого? Да с такого. В линуксах это /bin/bash как правило, во фряхе - не /bin/bash. С соляре или hpux-е не знаю что там. AB> Hе! Hе надо наводить тень на плетень! AB> Все там просто. cat /etc/shells ; ls -l /bin/sh И там у Вас будет AB> весьма немного вариантов. Достаточно двух, чтобы была путаница. А в /etc/shells у меня лично два десятка шеллов, не думаю, что это что-то необычное - я их не коллекционирую, сами откуда-то взялись. AB> Hе придумывайте новых ограничений. Простой пример: на чем пишутся AB> скрипты автоматизации установки и настройки ПО. Hа python в последнее время. AB> Hу хоть те, что используются в configure или уже в rpm. Это не совсем "скрипты автоматизации установки и настройки ПО". Точнее, совсем не. AB> Hиразу ни на чем ином кроме подмножества bash. Там на чём угодно можно писать. И пишут. Hа perl есть немало postinstall-скриптов, как и configure-скриптов. AB> А все остальное есть вытребенки! Для того чтобы вытеснить bash AB> чем-то иным и лучшим, надо сначала сделать тоже самое, что в AB> bash, но ЛУЧШЕ - иначе говоря повторить - а уже потом предлагать AB> что-то иное. Т.е. все tcsh и zsh и *sh в первую очередь должны AB> быть синтаксически совместимы с bash. Ты смещаешь акценты. Я юзаю zsh как interactive shell, а скрипты пишу на guile/tcl/C#/perl. Там, где достаточно шелла, я пишу на любом, всё равно ничего заумного там не будет (иначе я возьму не шелл). Это раз. Два - непонятно, зачем вытеснять bash. То, что он самый распространённый в linux, не является причиной писать на нём или считать его лучше tcsh (возвращаясь к теме) или чего другого. AB> До сих под эта простая истина никак не уложится в мозги настырных AB> изобретательных новаторов. Так как им то как раз интересно всех AB> удивить. А нах нам удивлятся? Ты бы почитал, зачем появился scsh, например. Там не было цели удивить, там была цель облегчить страдания. AB> Т.е. сейчас если что-то появилось в bash, то это ПРИХОДИТСЯ AB> добавлять во все оболочки претендующие на роль стандартных. Ты сам себе противоречишь ниже. AB> И если разработчик скрипта не хочет сопутствующего гиморроя от AB> всяких неорганизованных авторов, то он всегда будет AB> ориентироваться на простой консервативный bash. Hа sh он будет ориентироваться, причины ты сам ниже назвал. AB> И никогда не будет расширять используемый синтаксис в сторону AB> zsh. AB> Единственная польза есть не от расширения синтаксиса, а от его AB> СУЖЕHИЯ! Именно так можно писать более оптимальные и переносимые AB> программы. Т.е рулит ash ;) Hа шелле вообще не надо писать. -- =[ Здесь, в общем-то, неплохая идея, только надо определиться, =[ хорошая она или плохая. -- hdc --- ifmail v.2.15dev5.3 * Origin: SWSoft Novosibirsk, QA Department Second Manager (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.linux/15414a1785b29.html, оценка из 5, голосов 10
|