Повышение производительности труда системных администраторов *nix при написании скриптов

в 21:10, , рубрики: Песочница, метки:

Уважаемыее, предлагаю к вашему рассмотрению патч к парсеру bash-4.2, который позволит повысить производительность написания скриптов.

Преамбула

У всех своё понимание активного отдыха. У меня, как и у любого специалиста ИТ, очень часто возникает необходимость отвлечься от текущей задачи (которая никак не хочет решаться) и сделать нечто постороннее. В один из таких моментов мне и пришла в голову блестящая мысль — отдохнуть с пользой. А именно — выпить кофе и заглянуть в парсер bash-4.2 с целью проверки неких идей, связанных с знаменитыми по прошлому году дырами в безопасности.

Амбула

В результате распития кофе родился уникальным в своём роде акселератор труда системных администраторов — «Effective Bash», или если коротко — ebash. Суть изменений парсера также проста, как и гениальна: все мусорные ключевые слова, а именно — then, do, fi, done — заменены на тривиальные символы фигурных скобок. Наконец-то системные администраторы *nix, смогут избавиться от рудиментов паскалебейсика в своём излюбленном инструменте и сэкономить несколько символов в коде скриптов, как это делают программисты C. К сожалению, совместимость с bash пришлось сохранить, так как в противном случае десятилетия труда системщиков пропали-бы в туне с переходом на ebash.

Если вы являетесь руководителем системных администраторов — это и ваш инструмент. Подходите к самому ленивому из своих сисадминов и протягиваете на флэшке патч. Он и спрашивает: «Что это?». А вы ему прямо так название патча и произносите. Он, конечно, будет в восторге и сразу примется за дело.

Собственно, сам патч.

Новые возможности

Благодаря смене синтаксиса становится очень трудно отличить списки от языковых конструкций визуально:

for i in a ba c d
{
    echo $i
   if [ $i == "d" ]
   {
          echo {man,pan,wan,wohoo,{sublist,ok}}
   }
}

Тоже самое одной строкой:

for i in a ba c d; { echo $i; if [ $i == "d" ]; { echo {man,pan,wan,wohoo,{sublist,ok}}; }; }

А уж какой простор открывается для всевозможных эксплоитов — трудно вообразить.

Всех с первым апреля!

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js