В каждом разрабатываемом устройстве у меня присутствовал отладочный вывод в UART, как в самый распространённый и простой интерфейс.
И каждый раз, рано или поздно, мне хотелось помимо пассивного вывода сделать ввод команд через тот же UART. Обычно это происходило когда мне хотелось для отладки выводить какой-нибудь очень большой объём информации по запросу (например состояние NANDFLASH, при разработке собственной файловой системы). А иногда хотелось программно управлять ножками GPIO, чтобы отрепетировать работу с какой-нибудь переферией на плате.
Так или иначе мне был необходим CLI, который позволяет обрабатывать разные команды. Если кто-то натыкался на уже готовый инструмент для этих целей — буду благодарен за ссылку в комментариях. А пока я написал собствыенный.Читать полностью »
Рубрика «cli» - 6
Command line interpreter на микроконтроллере своими руками
2015-01-10 в 0:03, admin, рубрики: cli, command line, console, gcc, microcontrollers, uart, программирование микроконтроллеровКластеризация nodejs web-сервера с помощью node-clusterize-cli
2014-01-13 в 12:43, admin, рубрики: cli, clustering, clusterization, node.js, Серверное администрирование, метки: cli, clustering, clusterization, node.jsПоследние полгода я занимаюсь разработкой достаточно большого web-приложения, под капотом которого ревет и дымится NodeJS. Когда дело дошло до деплоя на продакшн я задумался: «почему бы мне не использовать несколько тредов с инстансом приложения?».
Реализовав кластер, я увидел, что производительность от его использования возросла в 1,5 раза, что очень даже не плохо, учитывая малый объем потраченных усилий. Но я решил не останавливаться на этом, и сделать удобный CLI для работы с кластером, чтобы отвязать код, который отвечает за запуск кластера от конкретного приложения. Кроме того, очень хотелось демонизировать кластер, чтобы он висел себе молча в процессах, поднимал упавшие воркеры, писал в логи, и никого больше не отвлекал.
Так появился node-clusterize-cli.
Читать полностью »
Клиент Яндекс.Диска для Linux. Консольный
2013-08-27 в 11:03, admin, рубрики: cli, linux, Блог компании Яндекс, разработка, яндекс, Яндекс.Диск, метки: cli, linux, яндекс, Яндекс.ДискСегодня мы представляем долгожданный клиент Яндекс.Диска для Linux. Можно было бы даже сказать «специально для Хабрахабра», так как ни одно упоминание Диска здесь не обходилось без вопросов о клиенте для Линукса.
У него есть вся основная функциональность, которая есть у клиентов для OS X и Windows, и даже больше (симлинки!), и одна особенность — он консольный.
Ниже читайте о том, как он настраивается, что конкретно умеет, и о том, как именно он устроен и что в нём было непросто сделать.
Использование ncurses в PHP
2013-07-14 в 13:44, admin, рубрики: cli, php, интерфейсы, переводы, метки: cli, PHPКак программист и веб-разработчик, вы наверное время от времени пишете программы на php для администрирования сайта из консоли. Средствами языка можно сделать только выводящую/читающую из консоли программу, но с помощью библиотеки ncurses можно создать консольную утилиту с довольно сложным внешним видом, которая будет одинаково выглядеть в разных видах терминалов.
PHP очень гибок и расширяем, с его помощью можно создавать скрипты, которыми можно заменить аналогичные на других языках (Perl/bash-скрипты и прочее). Функциональность ncurses поразительна и действительно выводит возможности работы с терминальным php-приложением на новый уровень.
Предназначение статьи — дать вам «толчок» в сфере написания консольных утилит на php, которые будут использовать возможность этой библиотеки. Я собираюсь показать только самое важное, относящееся к самой библиотеке, и надеюсь дать вам базу для использования ncurses в вашем приложении.
Для кого предназначена статья
Материал предназначен для опытных php-программистов, заинтересованных в создании консольных php-приложений с пользовательским интерфейсом. (прим. переводчика: материал пригодится разработчику любого уровня, здесь нет ничего сложного).
Читать полностью »
CLI на питоне. Пускаем пользователя на сервер
2013-04-03 в 14:26, admin, рубрики: cli, cmd, python, shell, системное администрирование, метки: cli, cmd, python, shell, системное администрирование Я системный администратор по роду деятельности. Поддерживаю удаленно сервера разных клиентов. Нередко приходится слышать от клиента просьбу дать шелл-доступ на сервер. С одной стороны просьба вполне обоснованная: сервер не мой, да и доступ клиенту нужен, чтоб меня же не дергать по пустякам (скажем, посмотреть, не закончилось ли место на диске или все ли процессы запущены). С другой стороны клиент зачастую практически не имеет опыта работы в unix, и нет никакой гарантии, что я смогу все исправить после того, как клиент по незнанию сотрет что-нибудь с диска или заблочит мне доступ, удалив правила фаервола. Зачастую клиенты и сами это понимают, но настаивают на предоставлении им доступа, не видя другого выхода.
Казалось бы, можно дать клиенту урезанный шелл и контролировать исполнение «опасных» команд при помощи sudo. Однако даже если с точки зрения безопасности удается все удачно «разрулить», это не решает всех проблем. Клиента приходится учить основам работы в командной строке, отвечать на шквал вопросов и разбираться, что и почему у него не получается. Время, затрачиваемое на поддержку, увеличивается значительно.
Пытаясь найти решение я наткнулся на описание модуля Cmd для Python. Данный модуль позволяет с минимальными затратами написать подобие интерфейса командной строки c необходимым набором команд.Читать полностью »
Каждый из нас выбирает для себя наиболее удобную среду разработки. Многие пользуются отдельной IDE, несколькими открытыми консолями, отдельным браузером, множеством прочих сторонних инструментов. Я же придерживаюсь принципа — все должно быть милимастично и просто конфигурируемо. Tmux позволяет сделать очень удобную рабочую среду для программиста.
Конечно даже к хорошему нужно привыкать, у меня лично на адаптацию к Tmux ушло пару дней, после чего я уже начал во всю менять конфиг для увеличения своей производительности. Через пол года я не предсавляю, как можно работать без него.
Если Вам интересно, как можно изменить обычную консоль, превратив ее в нечто похожее на привычный оконный менеджер, то добро пожаловать под кат
Читать полностью »
AWS Command Line Interface — всё в одном
2012-12-23 в 10:01, admin, рубрики: Amazon Web Services, api, AWS, cli, Блог компании EPAM Systems Ukraine, метки: api, aws, cli Привет!
Вы используете утилиты командной строки для управления серверами и сервисами AWS? Как же надоело обновлять и качать их из разных мест. Да и неоднородность команд тоже не радует…
AWS официально выпустили консолидированный CLI, который в последствии будет включать в себя все доступные сервисы. А сейчас можно управлять
- Amazon Elastic Compute Cloud (Amazon EC2)
- Elastic Load Balancing
- Auto Scaling
- AWS CloudFormation
- AWS Elastic Beanstalk
- Amazon Simple Notification Service (Amazon SNS)
- Amazon Simple Queue Service (Amazon SQS)
- Amazon Relational Database Service (Amazon RDS)
- AWS Identity and Access Management (IAM)
- AWS Security Token Service (STS)
- Amazon CloudWatch
- Amazon Simple Email Service (Amazon SES)
Продуктивная работа с MySQL в командной строке
2012-12-21 в 15:46, admin, рубрики: cli, linux, mysql, mysql clientДаже если Вы используете GUI-инструменты для работы с MySQL, однажды Вам предстоит столкнуться с командной строкой. Поэтому полезно знать некоторые трюки, которые облегчают работу.
Примечание: эти команды работают только для Unix/Linux.
Читать полностью »
AWS утилиты CLI теперь и для PowerShell
2012-12-06 в 7:01, admin, рубрики: Amazon Web Services, AWS, cli, powershell, Блог компании EPAM Systems Ukraine, метки: aws, cli, powershell Привет!
Многие знают, что помимо веб консоли у Amazon Web Services есть очень удобыне утилиты командной строки. Теперь эти утилиты доступны и для PowerShell!
Теперь администраторам Windows серверов на EC2 станет ещё легче интегрировать свои скрипты AWS.
Какие сервисы поддерживаются?
Большинство! Полный список ниже:
Читать полностью »
Как выглядит изнутри и какие преимущества модульных ОС сетевых устройств, на примере XOS от Extreme Networks
2012-11-21 в 23:18, admin, рубрики: cli, метки: cliВ последние годы производители активного сетевого оборудования продвигают свои продукты которые работают на модульных ОС, при этом CLI если и отличается, то незначительно.
Основные различия, как правило, скрыты от администраторов и пользователей по вполне логичным причинам (защита технологий, авторских прав, а также возможных необратимых последствий, к которым могут привести действия пытливых умов). О том как такие логические структуры реализуются практически чуть ниже.
Как правило модульные ОС работают поверх:
• MontaVista Linux (Cisco NX-OS, Extreme XOS)
• FreeBSD (JunOS)
• OpenBSD (Dell-Force10 OS)
• и других …
Но работа непосредственно с самой файловой системой заблокирована и требует дополнительных привилегий.
Читать полностью »