Вячеслав Ткачев - 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, причем используется широкий спектр команд и не
Подробная инструкция по максимальной эффективной защите компьютера от вирусов. Рассмотрены несколько вариантов защиты компьютера от вирусов. Защита обеспечивается не только антивирусными программами. Все эти защиты бесплатные.
Эта книга углубит Ваше представление о требованиях, откроет еще одну сторону их поведения – изменчивость под воздействием жизненных обстоятельств. В книге мы покажем, что требование не статично и на своем жизненном пути подобно фрукту, посеянному, растущему, созревающему, увядающему и умирающему. Вместе с читателем мы пройдем все эти этапы и покажем, как понять, на каком этапе сейчас наш "фрукт", как это влияет на его полезность для разработки и
Со знаний, данных в этой книге, начинается работа на компьютере, любом, независимо от современности. В азбуке проходит первое знакомство с устройством, показаны его части, с помощью которых потом производятся волшебные действия и создаются разнообразные тексты, изображения, картинки, фотографии и многое другое. Приступать к освоению своего компьютера и его программ рекомендуется с изучения азбуки, представленной в издании. Книга понятно рассказыв
В мире Linux и других Unix-подобных операционных систем, работа с текстовыми файлами является фундаментальной частью многих задач. От конфигурационных файлов до журналов, текстовые файлы являются основой многих процессов. Команда `sed`, потоковый редактор, является мощным инструментом для обработки и преобразования текстовых данных. Она позволяет выполнять широкий спектр операций, от простого поиска и замены до сложных манипуляций с текстом, без
Какие мужчины заставляют женские сердца биться быстрее? Что массовая истерия по секс-символам разных эпох может рассказать о самих женщинах и об изменениях в обществе? Историк Кэрол Дайхаус приглашает вас в путешествие по миру литературы, кино и массовой культуры, рассказывая о развитии женских желаний – от Байрона до Рудольфа Валентино, от Марка Дарси до Джастина Бибера. Вы узнаете все о том, как и почему меняется образ мужчины мечты на протяжен
Юная учительница танцев Марго самым невероятным образом, ведомая чёрными котами, оказалась в шикарном подмосковном особняке, где ей предстоит участвовать в подготовке дня рождения хозяйки. Обитатели особняка кажутся ей богатыми и счастливыми, в отличие от самой Марго. Но после произошедшего убийства одного из членов семьи, который удивительным образом был связан с прошлым девушки, всё меняется. Неведомый враг подлым образом заманивает её в смерте
Полина живёт в своём доме уже семь лет. Она решила, что так потихоньку и пройдёт остаток её жизни, но случилось то, что многое поменяло. Прямо на крыше почему-то уснул её сосед.
Маленький зайчонок сам не ожидал от себя такой храбрости! Хотя, если признаться, всё получилось как-то само собой… Финалист конкурса «Лугоземье-2012»