Функциональный язык для тех, кто не хочет тратить время на изучение нюансов Bash.
В мире Linux — это свободная и открытая операционная система, разработанная Линусом Торвальдсом в 1991 году. С тех пор Linux стал одной из наиболее популярных альтернатив коммерческим операционным системам. <br /> <br /> Основное преимущество Linux заключается в его открытом исходном коде, что позволяет пользователям свободно изменять и распространять систему в соответствии с лицензией GNU GPL. <br /> <br /> Linux предоставляет стабильную, надежную и гибкую платформу для работы с компьютером или сервером. Большинство дистрибутивов Linux (например, Ubuntu, Fedora, Debian) поставляются с разнообразными программами и инструментами для работы, включая офисные приложения, интернет-браузеры, мультимедийные инструменты и многое другое. <br /> <br /> Linux также широко используется в серверной сфере и встроенных системах, таких как маршрутизаторы и мобильные устройства." data-html="true" data-original-title="Linux" >Linux и DevOps-инструментов появился любопытный новичок — Amber , язык программирования нового поколения, ориентированный на создание Bash (Bourne Again SHell) — это командный интерпретатор, широко используемый в операционных системах семейства Unix, включая Linux и macOS. Он предоставляет пользователю интерфейс командной строки, в котором можно вводить команды и выполнять различные операции.<br> <br> Bash предоставляет множество функций, таких как выполнение команд, перенаправление ввода/вывода, пайплайны (передача вывода одной команды в качестве входных данных для другой), переменные окружения, циклы и условные операторы. Он также поддерживает автоматическое дополнение команд и историю команд, что упрощает взаимодействие с командной строкой.<br> <br> Bash является мощным инструментом для автоматизации задач в операционной системе, с помощью которого можно создавать сценарии (скрипты) на языке Bash, объединяя несколько команд в последовательность для выполнения сложных задач. Это позволяет автоматизировать рутинные операции, обрабатывать данные, управлять файлами и каталогами, а также выполнять другие операции системного администрирования." data-html="true" data-original-title="Bash" >bash-скриптов. Этот открытый проект, распространяемый под лицензией GPL 3.0, предлагает совершенно иной подход к написанию кода для Bash.
Amber позволяет разработчикам писать на современном высокоуровневом языке с синтаксисом, подобным ECMAScript. Код затем компилируется в bash-скрипт, который можно запустить напрямую или использовать в любом другом месте.
В качестве примера, вот как выглядит простой скрипт на языке Amber:
// Define variables
let name = "John"
let age = 30
// Display a greeting
echo "Hello, my name is {name}"
// Perform conditional checks
if age < 18 {
echo "I'm not an adult yet"
} else {
echo "I'm an adult"
}
// Loop through an array
let fruits = ["apple", "banana", "cherry", "date"]
echo "My favorite fruits are:"
loop fruit in fruits {
echo fruit
}
После компиляции программа преобразует скрипт test.ab в bash-скрипт test.sh со следующим содержимым:
__0_name="John";
__1_age=30;
echo "Hello, my name is ${__0_name}";
if [ $(echo ${__1_age} '<' 18 | bc -l | sed '/./ s/.{0,1}0{1,}$//') != 0 ]; then
echo "I'm not an adult yet"
else
echo "I'm an adult"
fi;
__AMBER_ARRAY_0=("apple" "banana" "cherry" "date");
__2_fruits=("${__AMBER_ARRAY_0[@]}");
echo "My favorite fruits are:";
for fruit in "${__2_fruits[@]}"
do
echo "${fruit}"
done
Создатели Amber утверждают, что их язык обеспечивает типобезопасность и безопасность времени выполнения, что помогает избежать ошибок, с которыми зачастую сталкиваются начинающие при работе с классическими bash-скриптами. Предупреждения об ошибках в Amber гораздо более понятны, чем лаконичные сообщения Bash.
Установка Amber на Linux довольно проста — достаточно выполнить одну команду в терминале. После установки пользователи получают доступ к обширной документации для изучения нового языка.
Amber ориентирован на новое поколение разработчиков, которые предпочитают более простые в использовании и функциональные инструменты, скрывающие низкоуровневые детали реализации. Подобно Warp Terminal, созданному для пользователей, избегающих работы с классическим Linux-терминалом, Amber упрощает написание bash-скриптов для тех, кто не чувствует себя уверенно в традиционном bash-скриптинге.
Хотя опытные системные администраторы, привыкшие к Bash, вряд ли оценят Amber, этот язык может стать отличным выбором для тех, кто только начинает осваивать облачные технологии и DevOps.
На перекрестке науки и фантазии — наш канал