Что такое Баш или, на что стоит обращать внимание новичку, при изучении инструмента командной строки.

Всем, доброго, с вами, Мирра Андрюхан.

В этой статье, мы с вами, разберемся с тем, что из себя представляет командная оболочка Баш в ОС ГНУ/Линукс. Разберем саму суть и смысл, пройдя к пониманию этого инструмента, без чего любое его изучение бессмысленное и бессистемное изучение и запоминание разрозненных знаний о командной оболочки, которое тратит дополнительно ваши внутренние силы, вместо того, чтобы развивать вас и давать ход следующему этапу развития. Т.к. мне такой путь претит, то пойдем нормальным путем.

Введение

Чтобы сформировать представление в себе о командной оболочке Баш, стоит сначала обратиться к истокам самой оболочки, что она из себя представляет, какие моменты унаследовала от предшественников, что из себя представляет в конечном итоге. Все, это — понимание, которое является ключевым к изучению и освоению часто применяемого и распространенного инструмента командной строки, в том числе больше других описываемого и легче доступного по части информации, т.к. применяется в большинстве сборок ГНУ/Линукс. Т.к. всегда легче начать освоение, начав и закончив изучение одной вариации (командной оболочки) инструмента командной строки, перейдя к изучению других потому, что в это моменте будет отправная точка для дальнейшего развития своего опыта и умения применять командную оболочку командной строки.

Истоки командной оболочки Баш

Начало пути формирования и развития конечной вариации командной оболочки идет от исполняемого файла «sh», который именуется, как «Оболочка Борна», которая является заменой «Оболочки Машея». Обе эти оболочки идут с ОС Юникс, так что в эти дебри мы залазить не станем, чтобы не отвлекаться на другие ОС, в том числе похожие на Линукс, т.к. Юникс и Линукс не являются друг другом прямыми родственниками, они похожи друг на друга, однако Линукс не является прямым наследником или потомком Юникса вообще. Он берет в качестве отправной точки основные идеи и принципы заложенные в Юникс, однако реализует это на свой лад, со своим пониманием. Если кто не понял, о чем я, то рекомендую поискать информацию о возникновении Линукса, который являлся в отличие от гибридного ядра, монолитным ядром со своими особенностями, т.к. имеет модули ядра, которые к тому же могут быть загружаемыми/выгружаемыми — конфигурируемое ядро во время собственной работы без перезагрузки. По сути Линукс, может спокойно работать без файловой системы, т.е. без обращения к дополнительным средствам хранения данных, поэтому нет ничего удивительного, что его можно записать на маленькое устройство без жесткого диска, предварительно собрав, настроив и загрузив на соответствующую микросхему (например, эта вариация, в том числе, более интересные варианты вариаций Линукса). Не мудрено понять, что инструменты командной строки в определенной мере доступны, в указанных по ссылкам вариациях, для применения.

«Оболочка Борна» в свих возможностях могла, следующие:

  • могла применять скрипты в качестве фильтров;
  • управление переменными и последовательностью выполнением команд;
  • управлением ввода/вывода, работа с файлами вместо/совместно вывода/с выводом на экран;
  • управление сигналами процессов в скриптах;
  • снятие ограничений на длину строк при исполнении скриптов интерпретатором;
  • обобщение экранирования строк (спецсимволы);
  • переменные среды, которые доступны и переходят в подпроцессы, в том числе в скрипты, без явной передачи их, в качестве параметров.

Данная оболочка является классикой и основой в большинстве сборок ГНУ/Линукс. На ее основе создано множество других командных оболочек, в том числе Баш. Так что, основа командной оболочки Баш — «Оболочка Борна», а от «Оболочки Корна» и «Оболочки Си» были добавлены полезные средства, которые сами по себе оказались интересны в соединении своих частей с основой. Благодаря чему, появилась новая командная оболочка, которая называется, как «Возрожденная Оболочка Борна», а в народе именуется «Баш». Говоря без особых деталей, руководствуясь пониманием, приходишь всегда к одному выводу, командная оболочка Баш прошла долгий путь своего развития еще с семидесятых 20 века, включив в себя полезные качества от других наработанных в своем применении командных оболочек, однако основой для осталась «Оболочка Борна».

Так что одни из особенностей, понятные новичкам в командной строке, это:

  • Простой и понятный в применении язык сценариев (скрипты могут читать, все, в том числе не программисты).
  • Преимущества интерактивного взаимодействия, привнесенные из группы оболочек командной строки «Оболочка Си».
  • Свобода распространения и полностью открытые исходные коды.
  • Полная реализация спецификации ПИОС.

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

На что, стоит обращать внимание новичку, при изучении командной строки.

Тут можно говорить часами, однако сокращу это до самой сути темы. Так что, в данном направлении деятельности новичка по части изучения командной строки, всегда стоит начинать с самого простого и элементарного, познакомившись с основными командами перехода по директориям и работа с файлами (в Линуксе, директория — файл). После перейти к небольшим основам по части работы с командами и аргументами, в том числе изучить директории Линукса с пониманием, что они из себя представляют, да зачем нужны, изучив новые команды и разобраться с экранированием строк. Также стоит разобраться в том, что такое внутренние и внешние команды, научившись различать их для себя, заодно поинтересоваться с изученным набором команд в этом направлении. После научиться применять несколько команд, в том числе разобраться в управлении вводом/выводом. Далее, стоит научиться применять фильтры, попутно изучая администраторские команды, чтобы понятное уметь применять на практике. Заодно, полезно освоиться с работой по части разграничения прав доступа применителей ОС ГНУ/Линукс. На последнем этапе стоит хорошо освоить создание скрипта, научиться его применять и делать применимым для других, т.е. то, что идет помимо грамотного комментирования.

Лично для меня, это сложно описывать на данном этапе, т.к. тоже еще в процессе собственного самообучения. Однако, уже не Новичок, а Любитель. Так что, мне есть чего сказать с позиции своего опыта и понятого по ходу его накопления (см. абзац выше).

В заключение.

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

Loading