Тут можно читать онлайн книгу Мэтью Нейл - Основы программирования в Linux - бесплатно полную версию (целиком). Жанр книги: Программирование. Вы можете прочесть полную версию (весь текст) онлайн без регистрации и смс на сайте Lib-King.Ru (Либ-Кинг) или прочитать краткое содержание, аннотацию (предисловие), описание и ознакомиться с отзывами (комментариями) о произведении.
Основы программирования в Linux - описание и краткое содержание, автор Мэтью Нейл, читать бесплатно онлайн на сайте электронной библиотеки Lib-King.Ru.
В четвертом издании популярного руководства даны основы программирования в операционной системе Linux. Рассмотрены: использование библиотек C/C++ и стандартных средств разработки, организация системных вызовов, файловый ввод/вывод, взаимодействие процессов, программирование средствами командной оболочки, создание графических пользовательских интерфейсов с помощью инструментальных средств GTK+ или Qt, применение сокетов и др. Описана компиляция программ, их компоновка c библиотеками и работа с терминальным вводом/выводом. Даны приемы написания приложений в средах GNOME® и KDE®, хранения данных с использованием СУБД MySQL® и отладки программ. Книга хорошо структурирована, что делает обучение легким и быстрым. Для начинающих Linux-программистов
Основы программирования в Linux - читать книгу онлайн бесплатно, автор Мэтью Нейл
1. Первым представим сценарий export2.
#!/bin/shecho "$foo"echo "$bar"2. Теперь сценарий export1. В конце сценария запускается export2.
#!/bin/shfoo="The first meta-syntactic variable"export bar="The second meta-syntactic variable"export2Если вы запустите их, то получите следующий результат.
$ <b>./export1</b>The second meta-syntactic variable$Как это работает
Сценарий export2 просто выводит значения двух переменных. В сценарии export1 задаются значения обеих переменных, но только переменная bar помечается как экспортируемая, поэтому, когда впоследствии запускается сценарий export2, значение переменной
foobar$foonullПосле того как переменная была экспортирована из командной оболочки, она экспортируется в любые сценарии, запускаемые из этой оболочки, и в любые командные оболочки, которые в свою очередь запускают эти сценарии, и т.д. Если бы сценарий export2 вызвал другой сценарий, в нем переменная
barКоманды
set -аset -allexportКоманда
exprх=`expr $x + 1`Символы
``хexpr $х + 1$( )х=$(expr $х + 1)Команда expr обладает большими возможностями, с ее помощью можно вычислять различные выражения. Основные виды вычислений перечислены в табл. 2.6.
Таблица 2.6
| Вычисление выражения | Описания |
|---|---|
<i>Выражение1 | Выражение2</i> |
<i>Выражение1</i>Выражение1Выражение2 |
<i>Выражение1</i> & <i>Выражение2</i> | Нуль, если оба выражения равны нулю, в противном случае Выражение1 |
<i>Выражение1</i> = <i>Выражение2</i> | Равенство |
<i>Выражение1</i> > <i>Выражение2</i> | Больше чем |
<i>Выражение1</i> >= <i>Выражение2</i> | Больше или равно |
<i>Выражение1</i> < <i>Выражение2</i> | Меньше чем |
<i>Выражение1</i> <= <i>Выражение2</i> | Меньше или равно |
<i>Выражение1</i> != <i>Выражение2</i> | Неравенство |
<i>Выражение1</i> + <i>Выражение2</i> | Сложение |
<i>Выражение1</i> — <i>Выражение2</i> | Вычитание |
<i>Выражение1</i> * <i>Выражение2</i> | Умножение |
<i>Выражение1</i> / <i>Выражение2</i> | Деление нацело |
<i>Выражение1</i> % <i>Выражение2</i> | Остаток от деления нацело |
В современных сценариях вместо команды
expr$((...))Команда
printfechoУ команды следующая синтаксическая запись.
<b>printf</b><i> "строка формата" параметр1 параметр2 ...</i>Строка формата очень похожа с некоторыми ограничениями на применяемую в языках программирования С и С++. Главным образом не поддерживаются числа с плавающей точкой, поскольку все арифметические операции в командной оболочке выполняются над целыми числами. Строка формата состоит из произвольной комбинации литеральных символов, escape-последовательностей и спецификаторов преобразования. Все символы строки формата, отличающиеся от
\%В табл. 2.7 приведены поддерживаемые командой escape-последовательности.
Таблица 2.7
| Escape-последовательность | Описание |
|---|---|
\" | Двойная кавычка |
\\ | Символ обратный слэш |
\a | Звуковой сигнал тревоги (звонок колокольчика или прерывистый звуковой сигнал) |
\b | Символ Backspace (стирание слева) |
\c | Отбрасывание последующего вывода |
\f | Символ Form feed (подача бумаги) |
\n | Символ перехода на новую строку |
\r | Возврат каретки |
\t | Символ табуляции |
\v | Символ вертикальной табуляции |
\ooo | Один символ с восьмеричным значением ooo |
\xHH | Один символ с шестнадцатеричным значением HH |