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

Оболочки *

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

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

Дайджест важных Linux событий 2016 — юбилеи

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

Прежде, чем погрузиться с пучину событий 2017 г. стоит оглянуться назад и отметить важные события и тренды минувшего года. Попытка охватить все важные события мире Linux и открытого ПО одним постом была самонадеянной, так как год выдался богатый юбилеями, а некоторые из них прошли незамеченными на Хабре. Из-за этого задуманный дайджест пришлось разбить на части, этот посвящен значительным юбилеям 2016 г: Linux, Vim, KDE и Git.


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

“Nano-Framework” для автоматизации добавления скриптов в .{bash/zsh}rc

Время на прочтение2 мин
Количество просмотров6.7K
Как часто приходилось видеть репозиторий с кастомным скриптом по установке своих скриптов .bashrc или .zshrc файлы? Я точно писал такой велосипед и не один раз, для репозиториев, где храню свои личные конфиги. Давайте эту проблему решать.


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

Grep все, что можно

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

Про grep знают если не все, то многие читатели Хабра, однако его многочисленных родственников знают немногие.




Давайте узнаем, как можно грепать все, что таит в себе хоть крупицу текста.

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

Методы удаленного доступа к Linux GUI

Время на прочтение11 мин
Количество просмотров360K
В службу технической поддержки RUVDS регулярно обращаются по поводу GUI и удаленного доступа к нему на виртуальных серверах с Linux, несмотря на то что в интернете достаточно много материалов освещающих эту проблему. Поэтому, для наших пользователей мы решили собрать всё по этой теме в одну статью.


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

Автор сurl просит Microsoft удалить алиасы curl и wget из PowerShell

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


Позавчера компания Microsoft опубликовала исходный код PowerShell. Таким образом, это средство автоматизации и конфигурирования на базе .NET Framework стало доступным под Linux.

Некоторые скептически относятся к стратегии «Microsoft любит Linux», которую декларирует редмондский гигант. Кое-кто считает, что консоль от Microsoft не нужна в операционной системе, в которой есть bash. Обычно это просто эмоциональные высказывания, но есть и вполне рациональные аргументированные возражения по существу. Например, разработчик программы curl Дэниель Стэнберг (Daniel Stenberg) вполне логично говорит, что наличие внутри PowerShell одноимённого алиаса curl, а также wget совершенно неуместно, потому что мешает запустить нормальные привычные программы.
Читать дальше →

0day уязвимости в lshell

Время на прочтение3 мин
Количество просмотров7.8K
lshell — это оболочка, которая ограничивает команды и пути файловой системы, доступные пользователю. Её прочат как альтернативу сложной настройки chroot:

и так далее, имеется множество источников, предлагающих её к использованию.

Приложение доступно в репозиториях Ubuntu, Debian и EPEL.
Читать дальше →

Сопроцессы: -что, -как, -зачем?

Время на прочтение5 мин
Количество просмотров21K
Многие пользователи Bash знают о существании со-процессов, появившихся в 4-й версии Bash'a. Несколько меньшее количество знает о том, что сопроцессы в Bash не какая-то новая фича, а древний функционал KornShell'a появившийся ещё в реализации ksh88 в 1988 году. Ещё меньшее количество пользователей shell'ов умеющих сопроцессить знают синтаксис и помнят как это делать. Вероятно, я отношусь к четвёртой группе — знающих о сопроцессах, периодически умеющих ими пользоваться но так и не понимающих «зачем?». Я говорю «периодически», так как иногда я освежаю в голове их синтаксис, но к тому моменту, когда мне кажется что «вот тот случай когда можно применить co-proc» я уже напрочь забываю о том как это делать.

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

В заголовке статьи у нас 3 вопроса. Пойдём по порядку.

Что?


Что же такое co-process? Со-процессинг — это одновременное выполнение двух процедур, одна из которых считывает вывод другой. Для его реализации необходимо предварительно запустить фоновый процесс выполняющий функционал канала. При запуске фонового процесса его stdin и stdout присваиваются каналам связанными с пользовательскими процессами. Соответственно, один канал для записи, второй для чтения. Пояснять это проще на примерах, поэтому сразу перейдём ко второму вопросу.
Читать дальше →

Улучшаем работу в консоли или как я написал команду sshcdvim

Время на прочтение3 мин
Количество просмотров13K
Наверняка многие делали так, как на картинке, но вот только у них при этом выдалась ошибка типа «файл не найден». Давайте исправим эту проблему, чтобы при таких очевидных опечатках происходило именно то, что вы хотели. То есть, когда вы пишете «ssh <dirname>», происходил заход в директорию <dirname> и наоборот, когда вы делаете «cd <hostname>» происходит заход по ssh. Ну и заодно сделаем то же самое для vim, чтобы 2 раза не вставать.

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

Трюки, облегчающие жизнь в zsh

Время на прочтение11 мин
Количество просмотров29K
Zsh — одна из лучших командных оболочек, обладающая впечатляющим набором возможностей. Однако, из‐за большого количества возможностей нет ничего удивительного в том, что некоторые из них проходят мимо внимания или возможность их применения для решения повседневных задач неочевидна. В этой статье будут рассмотрены как несколько «встроенных» возможностей zsh, так и примеры непростого кода, облегчающие жизнь.
Читать дальше →

Разноцветные терминалы

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


В этой публикации я расскажу о некоторых трюках, которые украсят будни любого системного администратора Linux (и не только). Все они связаны с переменной PS1 оболочки bash. Переменная PS1 определяет, как будет выглядеть приглашение для ввода новых команд. И каждый пользователь может переопределять её как пожелает, например, в файле ~/.bashrc (который выполняется при запуске bash и используется для в том числе для конфигурации).

Для начала рассмотрим простой вариант, мой любимый формат командной строки.
Читать дальше →

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

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

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


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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Это расширение называется XFeatures (текущая версия 1.5, пока еще с пометкой Beta). Я расскажу о самых полезных, на мой взгляд, возможностях.
Читать дальше →

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

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

Аннотация


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

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

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

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?
Читать дальше →

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

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

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

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



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

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

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

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

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

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

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