[Перевод] Статический анализатор ShellCheck и улучшение качества скриптов в Linux и Unix

Написание shell-скриптов — занятие увлекательное. Скрипты командной строки помогают автоматизировать повседневные дела. Можно создать нечто прекрасное (или какую-нибудь гадость), однако, если уж что-то писать, хорошо бы точно знать, что код получается именно таким, каким он нужен программисту. Скрипт, написанный некачественно, может представлять опасность. Большинство новичков пишут скрипты, копируя фрагменты кода со StackOverflow, находя то, что им нужно, в Google, или пользуясь сайтами с вопросами и ответами по Linux. Такой подход к программированию выливается в некачественный код и в появление ошибок. Вот, например, команда rm, выполнение которой приведёт к катастрофе, так как переменная VAR не определена:
rm -rf "/$VAR/*"
Многие из проблем скриптов можно решить с помощью линтера, такого, как статический анализатор кода ShellCheck, который написан на Haskell. Он помогает искать ошибки в текстах скриптов и выводить отчёты о проведённых проверках. Это позволяет повысить производительность работы и качество кода. Сегодня мы расскажем о том, как установить и использовать ShellCheck в Linux и Unix-подобных операционных системах. ...Далее...

[Перевод] Операционные системы Linux под разные задачи

Существует огромное количество операционных систем Linux, каждая из которых предлагает то либо другое преимущество. Различные варианты ОС могут затруднить выбор и забрать немалое количество времени для поиска необходимой именно под ваши задачи. Ubuntu, Mint, Elementary, Fedora, OpenSUSE… список удобных для пользователя дистрибутивов может показаться бесконечной историей. Нужна ОС попроще? Для игр? А возможно, нужен мультимедийный дистрибутив для комфортного просмотра и прослушивания медиа контента? Все они доступны.



Здесь собран регулярно обновляемый список операционных систем Linux, оптимально подходящий под конкретные потребности и требования проекта. Материал — адаптивный перевод статьи Christian Cawley The Best Linux Operating Systems.
Читать дальше →

Как написать свой первый Linux device driver. Часть 3

Добрый вечер, хаброчитатели!

В предыдущих статьях (один, два) мы определили понятие символьного устройства и написали простейший пример символьного драйвера. Последняя часть посвещена проверки его работоспособности. На Хабре уже есть примеры как можно протестировать драйвер, например: тык.

Я попытаюсь рассмотреть данный вопрос чуть подробнее, надеюсь, вам понравится.


Читать дальше →


Последние посты