Как стать автором
Обновить
0

Оболочки *

Шелл и компания

Сначала показывать
Порог рейтинга
Уровень сложности

Unix shell: абсолютно первые шаги

Время на прочтение12 мин
Количество просмотров291K

Зачем и для кого статья?


Изначально это была памятка для студентов, которые начинают работать с unix-подобными системами. Иными словами, статья рассчитана на тех, кто не имеет предыдущего опыта работы в unix-овой командной строке, но по тем или иным причинам хочет или должен научиться эффективно с нею взаимодействовать.

Здесь не будет пересказа манов (документации), и статья никак не отменяет и не заменяет их чтение. Вместо этого я расскажу о главных вещах (командах, приемах и принципах), которые надо осознать с самого начала работы в unix shell-е, чтобы работа происходила эффективно и приятно.

Статья касается полноценных unix-подобных окружений, с полнофункциональным шеллом (предпочтительно zsh или bash)и достаточно широким набором стандартных программ.

Читать дальше →
Всего голосов 36: ↑29 и ↓7+22
Комментарии21

Избавляемся от «исторических причин» в cmd.exe более лёгким и стандартным способом

Время на прочтение4 мин
Количество просмотров19K
Всем привет! Сегодня я хочу поделится с вами более лёгким и правильным, с моей точки зрения, способом достижения аналогичного описанному в статье пользователя NikitaTrophimov результата.
Думаю, нет смысла повторно писать вводную часть — автор оригинальной статьи это сделал до меня — и, так как моя статья вряд ли увидела бы свет, не напиши он свою, и является всего лишь альтернативным видением способа решения задачи, то я сосредоточусь на главном.

Как и автору оригинальной статьи, мне представлялось весьма странным поведение команды «cd» (или «chdir») в cmd.exe. Казалось нелогичным, что для смены активного диска необходимо каждый раз выполнять дополнительные действия. Являясь поклонником интерфейса командной строки, я не раз пробовал улучшать внешний вид и возможности стандартного командного интерпретатора Microsoft Windows, но о возможности изменить стандартное поведение команды «cd» раньше даже не задумывался. После прочтения вышеупомянутой статьи на Хабре мне не давало покоя ощущение чрезмерной нестандартности и сложности описанного способа… а желание создать свой собственный велосипед и поскорее уже начать им пользоваться привело к кучке паре-тройке часов потраченного в ближайший выходной времени на разбор полётов. Итак, кому интересны мои изыскания — добро пожаловать под кат!
Читать дальше →
Всего голосов 22: ↑19 и ↓3+16
Комментарии14

Show version and haiku, но не только: ищем все скрытые команды Junos

Время на прочтение8 мин
Количество просмотров6.2K
Всем привет!

Эта статья — о скрытых командах операционной системы Junos. Тем, кто работал с оборудованием Juniper под управлением ОС Junos (сюда относятся серии MX, SRX, EX, QFX, T, J, и многие другие) наверняка известно, что кроме «официальных» (документированных) команд в системе имеются и недокументированные. Их особенность в том, что они не видны в интерфейсе командной строки по контекстной подсказке (это когда вводишь вопросительный знак) и для них не работает автозаполнение, то есть команду нужно знать и ввести полностью (все буквы). Видимо, самая известная (и самая бесполезная) из таких команд — show version and haiku, выдающая «японское» трехстишие о жизни сетевых инженеров.

Скрытых команд, на самом деле, много. Вендор нигде не приводит их полного списка, но, например, на официальном форуме Juniper имеется прилепленный топик с довольно большим набором. Так что производитель не возражает против использования нами таких команд, просто на них не дается никакой гарантии — может работать, а может и положить ваше оборудование.

В этой статье я расскажу о том, как можно получить список всех скрытых команд Junos операционного режима, в пределах какой-то начальной ветки. Метод основан на довольно простом наблюдении, но гуглением мне не удалось найти свидетельств того, что вопрос раньше ставился в такой форме. Пример скрипта на Python прилагается.

Читать дальше →
Всего голосов 10: ↑9 и ↓1+8
Комментарии1

XFeatures — Полезное расширение для ATMEL STUDIO 6

Время на прочтение3 мин
Количество просмотров7.2K
imageДля тех, кто любит упрощать себе жизнь всякими расширениями оболочек, могу предложить использование приятного расширения и для ATMEL STUDIO 6.

Это расширение называется XFeatures (текущая версия 1.5, пока еще с пометкой Beta). Я расскажу о самых полезных, на мой взгляд, возможностях.
Читать дальше →
Всего голосов 7: ↑5 и ↓2+3
Комментарии2

ToFoIn – Toggle Failover of Internet или переключение между двумя внешними каналами в FreeBSD

Время на прочтение33 мин
Количество просмотров8.6K

Аннотация


Одним из вариантов повышения стабильности подключения к сети Интернет является использование двух внешних каналов связи, что подразумевает автоматическое переключение между ними. В статье кратко рассмотрены некоторые варианты решения данной задачи. Предложен свой способ решения с использованием скриптов на языке bash в ОС FreeBSD, приведены инструкции по созданию конечной системы и исходные тексты необходимых для этого скриптов.
Читать дальше →
Всего голосов 10: ↑8 и ↓2+6
Комментарии29

Окружение, опережающее мысль

Время на прочтение4 мин
Количество просмотров24K
desktopЕсли эффективной работе в cli/bash/vim посвящены сотни статей, то теме организации рабочего окружения сисадмина — едва ли несколько штук. Чаще всего это скриншоты какого-нибудь Enlightenment с 1 прозрачным терминалом, часам, календарем, 15 виджетами загрузки CPU и голой анимешной бабой на фоне. Подходит для фильма «Хакеры», не подходит для работы. Нам требуется, чтобы терминал появлялся еще до того, как мы об этом подумали, выполнял свою работу и исчезал бесследно до следующего такта.
Читать дальше →
Всего голосов 46: ↑31 и ↓15+16
Комментарии27

UEFI — Ааа, слышал… но все же, что это?

Время на прочтение3 мин
Количество просмотров204K

UEFI – взгляд вперед (часть 1/3)


Не так давно приходилось разбираться с тем, что такое UEFI и с чем же его едят. Тема весьма актуальна, а статей на русском языке не очень много. Что же, постараюсь исправить ситуацию и поделиться информацией, кою удалось «нарыть». Для начала, вводная глава для ознакомления с тем, что же такое UEFI и зачем оно нужно.

UEFI (Unified Extensible Firmware Interface) является связующей оболочкой между операционной системой и аппаратной частью (железом). В будущем планируется, что UEFI полностью вытеснит BIOS (Basic Input Output System) и займет его место. UEFI является относительно старой технологией, разработанной в 2005 (Unified EFI Forum) году. Однако, сие высказывание некорректно относительно данной ситуации, так как несмотря на то, что 8 лет довольно большой срок для IT-технологии и в иных сферах за эти годы успевали сменить сразу по нескольку технологий, UEFI изначально развивался довольно медленно и лишь в последние годы стал получать все большую известность. Ниже вы можете ознакомиться с графиком релизов UEFI.



Первоочередной целью при создании UEFI была разработка удобной и многогранной оболочки для 64-х битных систем с более развитым пользовательским интерфейсом и сетевым контролем.
И так, какими же преимуществами обладает UEFI?
Читать дальше →
Всего голосов 52: ↑39 и ↓13+26
Комментарии64

Десятка лучших консольных команд

Время на прочтение2 мин
Количество просмотров198K
imageВ данном посте я расскажу о наиболее интересных командах, которые могут быть очень полезны при работе в консоли. Однозначных критериев определения какая команда лучше другой — нет, каждый сам для своих условий выбирает лучшее. Я решил построить список команд на основе наиболее рейтинговых приемов работы с консолью от commandlinefu.com, кладовой консольных команд. Результат выполнения одной из таких команд под Linux приведен на картинке. Если заинтересовало, прошу под кат.
Узнать больше
Всего голосов 382: ↑346 и ↓36+310
Комментарии215

Еще один взгляд на планшет для пожилых

Время на прочтение2 мин
Количество просмотров15K
Вопросы поставленные темами Планшет для пожилых. Часть первая. и Планшет для пожилых. Часть вторая. вне всякого сомнения затронут или уже затронули почти каждого пользователя смартфона и планшета.
Попробую предложить параллельный взгляд на проблему Планшета для пожилых.
Не вызывает сомнения что парадигма управления должна быть совершенно иной, что собственно обсуждалось в предыдущих темах.



С моей точки зрения
Для использования планшета пожилым человеком
  • Пользователь должен быть высоко мотивирован на данное действие.
  • Должна быть обеспечена всесторонняя поддержка пожилому пользователю.

Я к сожалению не могу помочь с «привлечением узких специалистов» попробую помочь с привлечением средств, методом систематизации разработки предлагаемого вами продукта.
Мной подготовлено Техническое задание на разработку автоматизированной Системы «Планшет для неквалифицированного пользователя». В лучших традициях старого стиля отрасли ИТ. Возможно часть мыслей могут пригодится при привлечении внешнего финансирования.

Для инвестора будет важно:
1. Численность целевой группы,
В соответствии со статистикой «Число лиц старше трудоспособного возраста в России с 2006 года постоянно растет и на начало 2012 года составило 32,4 миллиона человек или 22,7% от общего населения. Численность лиц старше трудоспособного возраста сегодня на 8,9 миллиона человек превышает численность лиц моложе трудоспособного возраста» © Вовченко, Минтруд.
2. Способность Продукта (Системы) к извлечению прибыли.
Способ монетизации.
я тоже не люблю этот термин, но к сожалению получение внешних инвестиций без него невозможно.
В нашем случае предлагается иметь как минимум 2 платные услуги:
  • программу управления удаленным планшетом,
  • службу помощи пожилому пользователю.

Читать дальше →
Всего голосов 14: ↑9 и ↓5+4
Комментарии12

Парсинг CSV-файла средствами bash и awk

Время на прочтение3 мин
Количество просмотров8.9K
Доброго времени суток, Хаброчитатель!

Возникла у меня необходимость перевести интерфейс одной системы. Перевод для каждой формы лежит в отдельном XML-файле, а файлы группами разбросаны по папкам, что очень неудобно. Решено было создать единый словарь, чтобы в Excel’е работать с переводом всех форм. Данная задача в свою очередь разбивается на 2 подзадачи: извлечь информацию из всех XML-файлов в один CSV-файл, после перевода из CSV-файла создать XML-файлы с прежней структурой. В качестве инструментов были выбраны bash и awk. Первую подзадачу описывать смысла нет, так как она достаточно тривиальная. А вот как распарсить CSV-файл?
Узнать
Всего голосов 6: ↑4 и ↓2+2
Комментарии2

Переносим функциональность bash в cmd.exe

Время на прочтение2 мин
Количество просмотров114K
Мне, как и многим из вас, работать с bash и стандартными утилитами Linux гораздо удобнее и приятнее, чем с cmd.exe. Однако, к сожалению, порой обстоятельства складываются так, что операционную систему выбирать не приходится. Например, в моём случае корпоративным стандартом является Windows 7. К счастью есть способ сделать жизнь линуксоида в командной строке Windows комфортнее, о нём и пойдет речь ниже.

Читать дальше →
Всего голосов 94: ↑83 и ↓11+72
Комментарии103

Уведомления о завершении консольных команд

Время на прочтение1 мин
Количество просмотров24K
Undistract-Me — простая, но чрезвычайно полезная в хозяйстве утилита, которая делает одну вещь — выводит уведомление, когда длинная команда (по умолчанию 10 секунд, но можно настроить) завершила свое исполнение.



Также показывает название этой команды и время, которое она заняла. Должно работать со всеми окружениями рабочего стола.
Особенно хороша, когда вы, например, решили чего-нибудь скомпилировать, и не хотите все время пялиться в черный экран или проверять каждую минуту работает ли оно еще. Теперь во время пересборки ядра вы сможете наслаждаться своими любимыми видео с кошечками!
Читать дальше →
Всего голосов 54: ↑50 и ↓4+46
Комментарии48

Проверка входных параметров или косвенные ссылки на BASH

Время на прочтение12 мин
Количество просмотров9.9K
Проблема

По долгу службы приходится активно использовать Shell скрипты на ОС Linux.
Притом что все скрипты фактически одинаковые по своей сути – генерация данных. Немалое количество времени уходит на написание и отладку правильности проверки входной информации от заказчика. И соответственно определение параметров генерации данных на основании этих входных параметров.

В основе проверок лежат статические определенные спецификациями данные, зачастую таблицы, в результате сверок формируются новые необходимые параметры для дальнейшей генерации. При этом работа по настройке проверочной информации требует аккуратности и внимательности, поскольку возможные ошибки могут стоить дорого.
Стадия проверки в основном состоит из нагромождения вложенных конструкций case и if.Была мысль делать разбор табличек через систему cut ( таблица )> read var1 var2 var3 потом if-ы, а потом куда-то формировать результат — но все это не очень удобно и не красиво, хотелось минимального синтаксиса.
Читать дальше →
Всего голосов 27: ↑26 и ↓1+25
Комментарии3

Ближайшие события

zsh: tips & tricks

Время на прочтение3 мин
Количество просмотров31K

zsh logoО zsh не раз писали на хабре. Однако, и как те топики, и как мои личные наблюдения, показывают, что большинство людей, знакомых с zsh, используют его как bash с продвинутым автокомплитом. Да и тот (автокомплит) используют не на полную катушку.



Я не хочу описывать как раскрасить консоль во все цвета радуги или сделать промт, показывающий всё на свете. Я хочу показать, что возможности zsh гораздо шире, и его использование в качестве основной оболочки может сделать вашу работу немного краше.

Если вам интересно, и вы не сторонник холиваров, милости прошу
Всего голосов 64: ↑63 и ↓1+62
Комментарии34

Inferno Shell

Время на прочтение12 мин
Количество просмотров18K
FAQ: Что такое OS Inferno и зачем она нужна?

Оболочка ОС Инферно много лет вызывала у меня исключительно отрицательные эмоции. И я никогда не понимал, что в Inferno sh вызывает восторг у некоторых людей. Но, как говорится, лучше поздно чем никогда — сегодня я решил таки тщательно разобраться с шеллом, и в результате меня тоже проняло — это таки действительно уникальная вещь! Невероятно элегантная и простая.
Читать дальше →
Всего голосов 26: ↑24 и ↓2+22
Комментарии30

О разных командных оболочках Linux и Unix

Время на прочтение6 мин
Количество просмотров83K
imageНаверняка почти все читатели Хабра знают оболочки sh и bash. Так же большинство из нас что-то слышали про zsh и tcsh. Однако на этом список существующих оболочек не заканчивается. Условно можно разделить их на три группы:

  • Клоны Bourne shell (bash, zsh)
  • C shell (csh, tcsh)
  • Базирующиеся на популярных языках программирования(psh, ipython, scsh)
  • Экзотические, специфические и все остальные

О наиболее интересных из них и пойдет речь.
Читать дальше →
Всего голосов 100: ↑90 и ↓10+80
Комментарии33

Проверка баланса телефона в консоли

Время на прочтение3 мин
Количество просмотров18K
У каждого из нас есть мобильный телефон, а у кого-то даже не один. А еще есть телефоны ближайших родственников. И если проверить баланс на своем телефоне не составляет труда, то на телефоне, который не рядом с тобой это сделать затруднительно. Поэтому у меня возникло желание собрать все свои расходы по мобильной связи в одном месте, для того, чтобы их можно было вовремя пополнять, и видеть историю операций. Да, конечно можно к каждому телефону привязать карту и включить авто-пополнение, но лично мне не хочется однажды влететь в овердрафт или остаться без телефона, и это не решает проблемы сбора статистики.

Пару лет назад я пользовался программкой «баланс робот» на андроид телефоне, которая в виде виджетов показывала балансы моих телефонов, но тогда я любил постоянно перепрошивать свой телефон, и каждый раз восстанавливать настройки виджетов было очень лень, а еще хотелось, что бы эта информация была доступна не только мне. И я решил, что надо собрать всю эту информацию на web страничке.
Мне очень нравится работать в консоле, и я подумал, что нужно сделать две программы — одна вытаскивает баланс телефона, а вторая собирает статистику в БД и генерирует html странички с отчетом.
Читать дальше →
Всего голосов 19: ↑16 и ↓3+13
Комментарии11

Android прошивки на личном опыте

Время на прочтение9 мин
Количество просмотров240K
Доброе время суток. Данный топик является изложением личного опыта владения телефонами на базе Android. Монолог будет о плюсах и минусах сторонних прошивок и o том, что интересует, не совсем обычного пользователя современных гаджетов. Данный топик, надеюсь, будет интересен пользователям Android устройств раздумывающиж над кастомизацией. Опытным пользователям и тем более разработчикам, эта заметка вряд ли расскажет что-то новое.

У меня нет опыта владения телефонами на Windows Phone или Apple iOS и данный холивар в этом топике не затрагивается.
Читать дальше →
Всего голосов 21: ↑12 и ↓9+3
Комментарии29

Как установить и настроить оболочку ridiculous fish в Debian Squeeze

Время на прочтение2 мин
Количество просмотров6.6K
Совсем недавно я открыл для себя оболочку Ridiculous fish, которая принципиально отличается от bash и zsh с которыми я работал ранее. На моем MacBook Pro под Mac OS X оболочка установилась без каких либо проблем и замечательно работала. Освоившись в новой оболочке, я решил что пришло время установить и настроить ее так же и на серверах, на которых установлен 64-разрядный Debian Squeeze. Тут то я и столкнулся с тем, что 32-разрядный deb пакет, который лежит у них на сайте, на 64-разрядный Debian не устанавливается. И я решил собрать любимую оболочку из исходников. Этот процес и будет описан в статье.
Читать дальше →
Всего голосов 21: ↑14 и ↓7+7
Комментарии24

Удалённая установка приложений

Время на прочтение3 мин
Количество просмотров106K
Предлагаю программу для администраторов — Rinstall (скачать можно здесь). Она решает следующие задачи:

  1. Удалённое администрирование
  2. Удалённое выполнение команд
  3. Удалённая установка приложений
Читать дальше →
Всего голосов 27: ↑7 и ↓20-13
Комментарии30