4.2.1 Сложные командные строки
4.2.1 Сложные командные строки
Каждая командная строка выполняется в своей собственной подоболочке, таким образом, команды cd в командной строке влияют только на строку, в которой они записаны. Любую строку в make-файле можно расширить на множество строк, указывая в конце каждой обратный слэш. Ниже показан пример того, как иногда могут выглядеть командные строки.
1: cd первый_ каталог;
2: сделать что-то с файлом $ (FOO) ;
3: сделать еще что-то
4: cd второй_каталог;
5: if [ -f некоторый_файл ] ; then
6: сделать что-то другое;
7: done;
8: for i in * ; do
9: echo $$i >> некоторый__файл ;
10: done
make находит в этом фрагменте кода только две строки. Первая командная строка начинается в строке 1 и продолжается до строки 3, а вторая начинается в строке 4 и заканчивается в строке 10. Здесь следует отметить несколько моментов.
• второй_каталог является относительным не к каталогу первый_каталог, а к каталогу, в котором запущен make, поскольку эти команды выполняются в разных подоболочках.
• Строки, образующие каждую командную строку, передаются оболочке в виде одной строки. Таким образом, все символы ;, которые нужны оболочке, должны присутствовать, включая даже те, которые обычно в сценариях оболочки опускаются, поскольку их наличие подразумевается благодаря символам новой строки. Более детально о программировании программной оболочки рассказывается в [22].
• Если требуется разыменовывать переменную make, это делается обычным образом (то есть $(переменная)), но если нужно разыменовывать переменную оболочки, необходимо применять двойной символ $: $$i.
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
Как рисуются сложные контуры
Как рисуются сложные контуры Контуры сложных фигур рисуются в три этапа.1. Web-обозреватель ставится в известность, что сейчас начнется рисование контура сложной фигуры.2. Рисуются отдельные линии, прямые и кривые, составляющие сложный контур.3. Web-обозреватель ставится в
6.6. Сложные переходы
6.6. Сложные переходы Рассмотренное выше понятие перехода является вполне достаточным для большинства типичных расчетно-вычислительных задач. Однако современные программные системы могут реализовывать очень сложную логику поведения отдельных своих компонентов. Может
2.7. Более сложные сценарии
2.7. Более сложные сценарии Смысл празднования дня рождения ребенка весьма приближенно передается тем определением, которое можно найти, например, в толковом словаре: день рождения — это «прием гостей, устраиваемый по случаю дня рождения». Прием здесь может, в свою
Сложные выражения JavaScript
Сложные выражения JavaScript Сложные выражения получили свое название благодаря тому, что все они состав- лены из нескольких простых выражений. Сложные выражения выполняются специальным образом и служат для особых целей — в основном, для управления процессом выполнения
Как рисуются сложные контуры
Как рисуются сложные контуры Контуры сложных фигур рисуются в три этапа.1. Web-обозреватель ставится в известность, что сейчас начнется рисование контура сложной фигуры.2. Рисуются отдельные линии, прямые и кривые, составляющие сложный контур.3. Web-обозреватель ставится в
Сложные запросы
Сложные запросы С помощью сложных запросов можно выполнить следующее.• Представить данные из нескольких связанных таблиц в виде одной.• Выбрать данные по заданному пользователем условию.• Создать пользовательские поля запроса, значения которых будут основываться на
11.1.3. Более сложные конструкторы
11.1.3. Более сложные конструкторы По мере усложнения объектов у них появляется все больше атрибутов, которые необходимо инициализировать в момент создания. Соответствующий конструктор может оказаться длинным и запутанным, его параметры даже не будут помещаться на одной
11.2. Более сложные механизмы
11.2. Более сложные механизмы Не все в модели ООП, реализованной в Ruby, одинаково очевидно. Что-то сложнее, что-то применяется реже. Линия раздела для каждого программиста проходит в разных местах. В этой части главы мы попытались собрать те средства, которые не так просты или
Командные сообщения
Командные сообщения Сообщения WM_COMMAND от меню, кнопок панели управления и клавиш акселераторов. В отличие от оконных сообщений и сообщений от органов управления, командные сообщения могут быть обработаны более широким спектром объектов. Эти сообщения обрабатывают не
Командные сообщения и приложение Single
Командные сообщения и приложение Single Большинство командных сообщений от элементов меню и панели управления поступают для обработки главному окну приложения, представленному объектом класса CMainFrame.Главное окно приложения сразу передает командное сообщение для
Сложные команды.
Сложные команды. Для дешифровки сообщения, оставляя подпись на нем нетронутой:pgp –d ciphertextfileДля создания удостоверяющей подписи отдельно от документа:pgp –sb textfile [-u your_userid]Для отделения удостоверяющей подписи от подписанного сообщения:pgp –b
11. Командные Строки Компилятора
11. Командные Строки Компилятора Компилятор содержит препроцессор, способный выполнять макроподстановки, условную компиляцию и включение именованных файлов. Строки, начинающиеся с #, относятся к препроцессору. Эти строки имеют независимый от остального языка синтаксис;
Сложные проблемы
Сложные проблемы Сборщик мусора сталкивается со следующими проблемами, вызванными практическими ограничениями на размещение объектов в современной ОО-среде:[x]. ОО-подпрограммы могут вызывать внешние программы, в частности, С-функции, которые могут, в свою очередь,