» » » Мендель Купер - Искусство программирования на языке сценариев командной оболочки


Авторские права

Мендель Купер - Искусство программирования на языке сценариев командной оболочки

Здесь можно скачать бесплатно "Мендель Купер - Искусство программирования на языке сценариев командной оболочки" в формате fb2, epub, txt, doc, pdf. Жанр: Программирование. Так же Вы можете читать книгу онлайн без регистрации и SMS на сайте LibFox.Ru (ЛибФокс) или прочесть описание и ознакомиться с отзывами.
Мендель Купер - Искусство программирования на языке сценариев командной оболочки
Рейтинг:
Название:
Искусство программирования на языке сценариев командной оболочки
Издательство:
неизвестно
Год:
неизвестен
ISBN:
нет данных
Скачать:

99Пожалуйста дождитесь своей очереди, идёт подготовка вашей ссылки для скачивания...

Скачивание начинается... Если скачивание не началось автоматически, пожалуйста нажмите на эту ссылку.

Вы автор?
Жалоба
Все книги на сайте размещаются его пользователями. Приносим свои глубочайшие извинения, если Ваша книга была опубликована без Вашего на то согласия.
Напишите нам, и мы в срочном порядке примем меры.

Как получить книгу?
Оплатили, но не знаете что делать дальше? Инструкция.

Описание книги "Искусство программирования на языке сценариев командной оболочки"

Описание и краткое содержание "Искусство программирования на языке сценариев командной оболочки" читать бесплатно онлайн.



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






Ctl-C

Завершение выполнения процесса.

Ctl-D

Выход из командного интерпретатора (log out) (аналог команды exit).

"EOF" (признак конца файла). Этот символ может выступать в качестве завершающего при вводе с stdin.

Ctl-G

"BEL" (звуковой сигнал -- "звонок").

Ctl-H

Backspace -- удаление предыдущего символа.

#!/bin/bash

# Вставка символа Ctl-H в строку.


a="^H^H" # Два символа Ctl-H (backspace).

echo "abcdef" # abcdef

echo -n "abcdef$a " # abcd f

# Пробел в конце ^ ^ двойной шаг назад.

echo -n "abcdef$a" # abcdef

# Пробела в конце нет backspace не работает (почему?).

# Результаты могут получиться совсем не те, что вы ожидаете.

echo; echo


Ctl-J

Возврат каретки.

Ctl-L

Перевод формата (очистка экрана (окна) терминала). Аналогична команде clear.

Ctl-M

Перевод строки.

Ctl-U

Стирание строки ввода.

Ctl-Z

Приостановка процесса.

Пробельный символ

используется как разделитель команд или переменных. В качестве пробельного символа могут выступать -- собственно пробел (space), символ табуляции, символ перевода строки, символ возврата каретки или комбинация из вышеперечисленных символов. В некоторых случаях, таких как присваивание значений переменным, использование пробельных символов недопустимо.

Пустые строки никак не обрабатываются командным интерпретатором и могут свободно использоваться для визуального выделения отдельных блоков сценария.

$IFS -- переменная специального назначения. Содержит символы-разделители полей, используемые некоторыми командами. По-умолчанию -- пробельные символы.

Глава 4. Переменные и параметры. Введение.

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


4.1. Подстановка переменных

Когда интерпретатор встречает в тексте сценария имя переменной, то он вместо него подставляет значение этой переменной. Поэтому ссылки на переменные называются подстановкой переменных.

$

Необходимо всегда помнить о различиях между именем переменной и ее значением. Если variable1 -- это имя переменной, то $variable1 -- это ссылка на ее значение. "Чистые" имена переменных, без префикса $, могут использоваться только при объявлении переменный, при присваивании переменной некоторого значения, при удалении (сбросе), при экспорте и в особых случаях -- когда переменная представляет собой название сигнала (см. Пример 29-5). Присваивание может производится с помощью символа = (например: var1=27), инструкцией read и в заголовке цикла (for var2 in 1 2 3).

Заключение ссылки на переменную в двойные кавычки (" ") никак не сказывается на работе механизма подстановки. Этот случай называется "частичные кавычки", иногда можно встретить название "нестрогие кавычки". Одиночные кавычки (' ') заставляют интерпретатор воспринимать ссылку на переменную как простой набор символов, потому в одинарных кавычках операции подстановки не производятся. Этот случай называется "полные", или "строгие" кавычки. Дополнительную информацию вы найдете в Глава 5.

Примечательно, что написание $variable фактически является упрощенной формой написания ${variable}. Более строгая форма записи ${variable} может с успехом использоваться в тех случаях, когда применение упрощенной формы записи порождает сообщения о синтаксических ошибках (см. Section 9.3, ниже).

Пример 4-1. Присваивание значений переменным и подстановка значений переменных

#!/bin/bash


# Присваивание значений переменным и подстановка значений переменных


a=375

hello=$a


#-------------------------------------------------------------------------

# Использование пробельных символов

# с обеих сторон символа "=" присваивания недопустимо.


# Если записать "VARIABLE =value",

#+ то интерпретатор попытается выполнить команду "VARIABLE" с параметром "=value".


# Если записать "VARIABLE= value",

#+ то интерпретатор попытается установить переменную окружения "VARIABLE" в ""

#+ и выполнить команду "value".

#-------------------------------------------------------------------------


echo hello # Это не ссылка на переменную, выведет строку "hello".


echo $hello

echo ${hello} # Идентично предыдущей строке.


echo "$hello"

echo "${hello}"


echo


hello="A B C D"

echo $hello # A B C D

echo "$hello" # A B C D

# Здесь вы сможете наблюдать различия в выводе echo $hello и echo "$hello".

# Заключение ссылки на переменную в кавычки сохраняет пробельные символы.


echo


echo '$hello' # $hello

# Внутри одинарных кавычек не производится подстановка значений переменных,

#+ т.е. "$" интерпретируется как простой символ.


# Обратите внимание на различия, существующие между этими типами кавычек.


hello= # Запись пустого значения в переменную.

echo "\$hello (пустое значение) = $hello"

# Обратите внимание: запись пустого значения -- это не то же самое,

#+ что сброс переменной, хотя конечный результат -- тот же (см. ниже).


# --------------------------------------------------------------


# Допускается присваивание нескольких переменных в одной строке,

#+ если они отделены пробельными символами.

# Внимание! Это может снизить читабельность сценария и оказаться непереносимым.


var1=variable1 var2=variable2 var3=variable3

echo

echo "var1=$var1 var2=$var2 var3=$var3"


# Могут возникнуть проблемы с устаревшими версиями "sh".


# --------------------------------------------------------------


echo; echo


numbers="один два три"

other_numbers="1 2 3"

# Если в значениях переменных встречаются пробелы,

# то использование кавычек обязательно.

echo "numbers = $numbers"

echo "other_numbers = $other_numbers" # other_numbers = 1 2 3

echo


echo "uninitialized_variable = $uninitialized_variable"

# Неинициализированная переменная содержит "пустое" значение.

uninitialized_variable= # Объявление неинициализированной переменной

#+ (то же, что и присваивание пустого значения, см. выше).

echo "uninitialized_variable = $uninitialized_variable"

# Переменная содержит "пустое" значение.


uninitialized_variable=23 # Присваивание.

unset uninitialized_variable # Сброс.

echo "uninitialized_variable = $uninitialized_variable"

# Переменная содержит "пустое" значение.


echo


exit 0

Неинициализированная переменная хранит "пустое" значение - не ноль!. Использование неинициализированных переменных может приводить к ошибкам разного рода в процессе исполнения.

Не смотря на это в арифметических операциях допускается использовать неинициализированные переменные.

echo "$uninitialized" # (пустая строка)

let "uninitialized += 5" # Прибавить 5.

echo "$uninitialized" # 5


# Заключение:

# Неинициализированные переменные не имеют значения, однако

#+ в арифметических операциях за значение таких переменных принимается число 0.

# Это недокументированная (и возможно непереносимая) возможность.

См. так же Пример 11-19.


4.2. Присваивание значений переменным

=

оператор присваивания (пробельные символы до и после оператора -- недопустимы)

Не путайте с операторами сравнения = и -eq!

Обратите внимание: символ = может использоваться как в качестве оператора присваивания, так и в качестве оператора сравнения, конкретная интерпретация зависит от контекста применения.

Пример 4-2. Простое присваивание

#!/bin/bash

# Явные переменные


echo


# Когда перед именем переменной не употребляется символ '$'?


На Facebook В Твиттере В Instagram В Одноклассниках Мы Вконтакте
Подписывайтесь на наши страницы в социальных сетях.
Будьте в курсе последних книжных новинок, комментируйте, обсуждайте. Мы ждём Вас!

Похожие книги на "Искусство программирования на языке сценариев командной оболочки"

Книги похожие на "Искусство программирования на языке сценариев командной оболочки" читать онлайн или скачать бесплатно полные версии.


Понравилась книга? Оставьте Ваш комментарий, поделитесь впечатлениями или расскажите друзьям

Все книги автора Мендель Купер

Мендель Купер - все книги автора в одном месте на сайте онлайн библиотеки LibFox.

Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.

Отзывы о "Мендель Купер - Искусство программирования на языке сценариев командной оболочки"

Отзывы читателей о книге "Искусство программирования на языке сценариев командной оболочки", комментарии и мнения людей о произведении.

А что Вы думаете о книге? Оставьте Ваш отзыв.