Re: Прошу помощи в bash-ск рипт - кавычки

Victor Wagner <[email protected]>
Newsgroups gmane.linux.debian.user.russian
Message-ID <[email protected]>
On Wed, 11 Mar 2020 14:38:13 +0300
Dmitry Semyonov <[email protected]> wrote:

> On Wed, 11 Mar 2020 at 11:59, Victor Wagner wrote:
> 
> > А вообще крайне рекомендую, если вдруг выясняется, что для
> > формированмия команды в шелловском скрипте используется более двух
> > уровней подстановок, плюнуть  и переписать его на perl, python,
> > ruby, lua - любом другом скриптовом языке.  
> 
> После буквального следования таким советам кому-то потом придётся
> ломать голову над сотней-другой строк питоновской лапши вместо десятка
> строк понятных шелловских команд. Часто лучше один раз разобраться и

Так не надо писать лапшу. На любом языке можно написать плохой код.

Да, скорее всего код на более низкоуровневом языке (а perl и python -
более низкоуровневые языки, чем shell), окажется более объемным. Но от
от этого он не обязательно станет менее читаемым. 

> 
> Как пример ложного понимания универсальности "любых других скриптовых
> языков" можно привести обработку структурированного текста. То, что на
> awk делается максимум парой десятков строк понятного кода, часто
> превращают в неудобоваримый алгоритм на 100+ строк универсального
> языка.

Если это делается парой десятков строк на awk, то примерно в то же
количество строк это делается и на perl. Более того, специально для 
для решения этой задачи автор перла написал a2p.

Просто перл надо ВЫУЧИТЬ. В нем есть все, что есть в awk, sed и tr, и
многое-многое другое. А то приходят люди с визуалбейсковским
бэкграундом и начинают текст обрабатывать на perl с помощью функций
substr и index. 

Плюс к этому есть стандартные библиотечные модули для обработки
основных структорированных форматов, авторы которых предусмотрели
разные странные случаи, о которых у большинства писателей наколеночных
скриптов даже мысли не возникает, пока они лбом об эти грабли не
стукнутся.
--
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.