Вячеслав Ткачев - BASH. Справочное пособие

BASH. Справочное пособие
Название: BASH. Справочное пособие
Автор:
Жанр: Компьютерная справочная литература
Серии: Нет данных
ISBN: Нет данных
Год: 2022
О чем книга "BASH. Справочное пособие"

Данная книга является продолжением книги Справочное пособие по Linux. В данной книге дается как развернутая, так и краткая сводка команд, встроенных в оболочку Bash. Рассматриваются встроенные команды, переменные, функции, массивы. Применение команд с параметрами и аргументами рассматривается на многочисленных примерах. Книга адресована тем, кто хочет повысить свой профессиональный уровень знания Linux и заинтересован в автоматизации задач через командную строку путем написании собственных скриптов.

Бесплатно читать онлайн BASH. Справочное пособие


Глава1. Оболочка общие сведения.

В процессе загрузки операционных систем семейства Linux, после загрузки ядра системы выполняется переход в интерактивный режим – режим взаимодействия пользователя и операционной системы. В ОС Linux, первым запускаемым в ходе загрузки процессом, является программа инициализации init, которая определяет перечень и характеристики терминалов, имеющихся в системе, и вызывает программу интерактивного входа getty, отображающую приглашение для ввода имени пользователя. После ввода имени пользователя и пароля, программа getty вызывает программу login, которая проверяет достоверность учетной записи, выполняет переход в домашний каталог пользователя и передает управление программе начального запуска сеанса, в качестве которой обычно используется программа оболочки пользователя, конкретная разновидность которой определяется содержимым файла /etc/passwd для данной учетной записи.Командная оболочка (shell) обеспечивает взаимодействие между пользователем и средой операционной системы Linux. Она является специализированным программным продуктом, который обеспечивает выполнение команд и получения результатов их выполнения, или, если совсем уж упрощенно, оболочка – это программа, которая предназначена для обеспечения выполнения других программ по желанию пользователя. Примером оболочки может быть, например, интерпретатор команд command.com операционной системы MS DOS, или оболочка bash операционных систем Unix / Linux. Оболочка Bash представляет средства для написания сценариев оболочки.

Оболочка читает свой ввод ....

Оболочка разбивает входные данные на токены:

слова и операторы.

Оболочка анализирует ввод в простые и составные

команды.

Оболочка выполняет различные расширения (отдельно) …

Оболочка выполняет перенаправление и удаляет

операторы перенаправления и их операнды из

списка параметров.

Оболочка выполняет функцию, встроенный,

исполняемый файл или скрипт …

Оболочка по желанию ожидает завершения

команды и собирает статус выхода.

1.1 Краткий обзор функциональных средства.

В оболочке Bash предоставляются следующие функциональные средства и возможности

Переадресация ввода-вывода.

Применение метасимволов для сокращения имен файлов. Переменные и параметры для специальной настройки рабочей среды. Встроенный набор команд для написания программ оболочки. Функции и оболочки для модульной организации задач.

Управление заданиями.

Редактирование (редакторы vi ,Emacs).

Доступ к предыдущим командам.

Арифметические операции.

Массивы и арифметические выражения.

Применение псевдонимов и другие средства.

1.2 Вызов оболочки.

Интерпретатор команд оболочки можно вызвать

bash [параметры ][аргументы ]

Путь к оболочке по ссылке /bin/sh.

Команды оболочки можно выполнять с терминала, из файла (когда в качестве первого аргумента указан сценарий).Исходные оболочки читают содержимое файлов etc/profile и . profile profile

# /etc/profile: system-wide .profile file for the Bourne shell (sh(1))

# and Bourne compatible shells (bash(1), ksh(1), ash(1), …).

if [ "${PS1-}" ]; then

if [ "${BASH-}" ] && [ "$BASH" != "/bin/sh" ];

Примечание

$ echo $PS1-

${debian_chroot:+($debian_chroot)}\u@\h:\w\$ -

$ echo $BASH-

/bin/bash-

$ echo $BASH

/bin/bash

then

# The file bash.bashrc already sets the default PS1.

# PS1='\h:\w\$ '

if [ -f /etc/bash.bashrc ]; then

. /etc/bash.bashrc

fi

else

Следующий фрагмент кода определяет форму приглашения для root # для user $

if [ "`id -u`" -eq 0 ]; then

PS1='# '

else

PS1='$ '

fi

fi

fi

Следующий фрагмент кода запускает один за другим всескрипты в каталоге /etc/profile.d

if [ -d /etc/profile.d ]; then

for i in /etc/profile.d/*.sh; do

if [ -r $i ]; then

. $i

fi

done

unset i

fi

Глава 2 Синтаксис.

2.1.Специальные файлы.

Оболочка читает содержимое одного или нескольких файлов запуска.

/etc/profile Автоматически при входе в систему

~/.bash_profile, ~/.bash_login или ~/.profile

~/.bashrc

~/.bash_logout Выход из системы или команда exit,

2.2 Метасимволы подстановки имен файлов.

* Совпадение с любой строкой.

Пример, перечислить файлы начинающие с output

$ ls output*

output1.wav output2.wav output3.wav output4.wav

? Совпадение с любым символом.

Пример

$ cd video?

~/video1$

[ abc..] совпадение с любым символом в квадратных скобках.

[!abc..] совпадение с любым символом кроме указанных в квадратных скобках.

~ Начальный каталог текущего пльзователя

~max Начальный каталог пользователя max

~+Текущий рабочий каталог ($PWD)

~– Предыдущий рабочий каталог ($OLDPWD).

Пример

~/video1$ cd # Переходим в текущий каталог.

$ cd – # Переходим из текущего каталога в предыдущий.

~/video1$

2.3.Метасимволы при установленном параметре extglob.

Активизировать расширение шаблонов командой

shopt (манипулирование параметрами оболочки).

shopt: shopt [-pqsu] [-o] [параметр …]

Set and unset shell options.

Options:

–o       restrict OPTNAMEs to those defined for use

with `set -o'

–p       print each shell option with an indication

of its status

–q suppress output (запретить выход).

–s enable (set) each OPTNAME

–u disable (unset) each OPTNAME

$shopt -s extglob

$ man shopt

Нет справочной страницы для shopt

?(шаблон) Совпадение с нулевым или единичным

количеством экземпляров заданного шаблона.

*(шаблон) Совпадение с нулевым или большим

количеством экземпляров заданного шаблона.

+(шаблон)Совпадение с единичным или большим

количеством экземпляров заданного шаблона.

@(шаблон) Точное совпадение с одним экземпляром

заданного шаблона.

! (шаблон) Совпадение с любыми символьными

строками не совпадающими с заданным шаблоном

Пример 1 Создадим файл из одной строки

$ cat >fs2.txt

Hello

^d

$ rm fs?(2).txt; cat fs2.txt

cat: fs2.txt: Нет такого файла или каталога

Пример 2

$ cat >fs01.txt

Allo

$ rm fs*(01).txt; cat fs01.txt

cat: fs01.txt: Нет такого файла или каталога

Пример 3

$ cat >fs_lin.txt

Hello friend

$ rm fs@(_lin).txt; cat fs_lin.txt

cat: fs_lin.txt: Нет такого файла или каталога

Пример 4

$ cat >fs_lin.txt

Hello friend

$ rm fs!(lin).txt; cat fs_lin.txt

rm: невозможно удалить 'fs!(lin).txt': Нет такого файла или каталога

cat: fs_lin.txt: Нет такого файла или каталога

2.4 Совпадение с классами символов.

Класс Совпадающие символы

alnum Буквенно-цифровые

alpha Буквенные

ascii Символы в коде ACII

blank Пробелы и знаки табуляции

cntrl Управляющие

digit Десятичные цифры

graph Непробельные

lower Строчные буквы

print Печатаемые

punct Знаки препинания

space Пробельные

upper Прописные буквы

word То же что и alnum

xdigit Шестнадцатиричные цифры

Пример

Эквивалентом выражения "[a-zA-Z_0-9]" является выражение "[[:alnum:]]"

Выражению "[0-9]" эквивалентно выражение "[[:digit:]]"

Выражению "[a-Z]" эквивалентно регулярное выражение "[[:alpha:]

[01[:alpha:]%] совпадает с 0 ,1 ,любым алфавитным символом или %.


С этой книгой читают
При работе в системе Linux невозможно обойтись без работ в терминале с командной строкой. Командная строка позволяет использовать всю мощь и гибкость системы Linux. Как правило, новичок или опытный пользователь вызывает страницы справочного руководства, однако, оно очень большое, к тому же, как правило, на английском языке. В этой книге приводится достаточно много примеров использования команд Linux, причем используется широкий спектр команд и не
Миварные технологии создания логического искусственного интеллекта: логическая обработка с линейной вычислительной сложностью более 3 миллионов продукций и возможность понимания смысла через моделирование большого контекста. Выделены 3 уровня научных исследований в области искусственного интеллекта (ИИ). Приведены результаты практических расчетов и решений задач, которые экспериментально подтвердили линейную вычислительную сложность логического в
В серии книг “Справочник Жаркова по проектированию и программированию искусственного интеллекта” в нескольких томах собрано лучшее программирование искусственного интеллекта (ИИ) в двух- и трёхмерных играх и приложениях, разработанных как автором, так и взятые из Интернета за многие годы и доработанные автором с учётом современного программирования. Программирование ИИ на Visual C# разделено на тома. В томе 8 дана методология программирования ИИ:
В серии книг “Справочник Жаркова по проектированию и программированию искусственного интеллекта” в нескольких томах собрано лучшее программирование искусственного интеллекта (ИИ) в двух- и трёхмерных играх и приложениях, разработанных как автором, так и взятые из Интернета за многие годы и доработанные автором. Программирование ИИ на Visual C# написано в IX частях, которые разделены на четыре тома 7, 8, 9 и 10. В томе 9 дано. Краткие основы Visua
В серии книг “Справочник Жаркова по проектированию и программированию искусственного интеллекта” в нескольких томах собрано лучшее программирование искусственного интеллекта (ИИ) в двух- и трёхмерных играх и приложениях, разработанных как автором, так и взятые из Интернета за многие годы и доработанные автором. Программирование ИИ на Visual Basic разделено на тома 4, 5, 6, 11, 12 и 13. В томе 13 дана Методология программирования ИИ в играх: по сб
Какие мужчины заставляют женские сердца биться быстрее? Что массовая истерия по секс-символам разных эпох может рассказать о самих женщинах и об изменениях в обществе? Историк Кэрол Дайхаус приглашает вас в путешествие по миру литературы, кино и массовой культуры, рассказывая о развитии женских желаний – от Байрона до Рудольфа Валентино, от Марка Дарси до Джастина Бибера. Вы узнаете все о том, как и почему меняется образ мужчины мечты на протяжен
Юная учительница танцев Марго самым невероятным образом, ведомая чёрными котами, оказалась в шикарном подмосковном особняке, где ей предстоит участвовать в подготовке дня рождения хозяйки. Обитатели особняка кажутся ей богатыми и счастливыми, в отличие от самой Марго. Но после произошедшего убийства одного из членов семьи, который удивительным образом был связан с прошлым девушки, всё меняется. Неведомый враг подлым образом заманивает её в смерте
Эта прекрасная книга поэта-фронтовика Якова Лазаревича Акима состоит из трех разделов. В первом разделе – лучшие стихи для детей. Второй раздел – сказки в стихах «Песенка в лесу» и «Девочка и лев», по которым были созданы замечательные мультфильмы. Третий раздел – это необыкновенно увлекательная сказка «Учитель Так-Так и его разноцветная школа».Открывается книга предисловием критика Владимира Александрова.
Если вы устали плыть по течению и хотите изменить жизнь – начните прямо сейчас! Автор книги, известный психолог Константин Довлатов разработал уникальную методику, которая преобразит вашу жизнь, – «Духовную интеграционику».Методика запускает скрытые ресурсы и способности, благодаря которым вы начинаете принимать правильные решения, привлекать нужных людей, ваше самочувствие улучшается, все складывается удачно, как бы само собой. Изменения происхо