18.7.8. Игнорирование символа #

18.7.8. Игнорирование символа #

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

Предположим, что с помощью обычного цикла while просматривается файл конфигурации. Обычно выполняется построчный просмотр.

Однако с помощью оператора case можно игнорировать некоторые строки, начинающиеся с определенных символов. Поскольку символ # является специальным, для его отключения используется символ ""; затем после символа хэша указывается звездочка, что позволит после хэша размещать любые символы.

Ниже приводится типичный файл конфигурации.

$ pg config

#ЭТО КОНФИГУРАЦИОННЫЙ ФАЙЛ ПОДСИСТЕМЫ АУДИТА

#НЕ РЕДАКТИРУЙТЕ ЕГО! ОН РАБОТАЕТ

#

# задание административного доступа

AUDITSCM=full

#местонахождение подсистем

AUDITSUB=/usr/opt/audit/sub

#серийный номер хэша для продукта

HASHSER=12S90AB3

#КОНЕЦ ФАЙЛА КОНФИГУРАЦИИ!!!

#

Ниже приводится сценарий, где игнорируются символы хэша:

$ pg ignore_hash

#!/bin/sh

# игнорируйте_хэш

INPUT_FILE=config

if [ -s $INPUT_FILE ]; then

while read LINE

do

case $LINE in

#*) ;; # игнорировать все символы хэша

*) echo $LINE

;;

esac

done < $INPUT_FILE

else

echo "`basename $0` : Sorry $INPUT_FILE does not exist or ls empty"

exit 1

fi

При выполнении получим:

$ ignore_hash

AUDITSCM=full

AUDITSUB=/usr/opt/audit/sub

HASHSER=12890AB3

Поделитесь на страничке

Следующая глава >

Похожие главы из других книг:

10.4.3. Игнорирование сигналов

Из книги автора

10.4.3. Игнорирование сигналов Более практично, когда вызывается обработчик сигнала, это означает, что программа должна завершиться и выйти. Было бы раздражающим, если бы большинство программ по получении SIGINT выводили бы сообщение и продолжали работу; смысл сигнала в том,


10.8.3.1. Плохие родители: полное игнорирование потомков

Из книги автора

10.8.3.1. Плохие родители: полное игнорирование потомков Простейшим действием, которое вы можете сделать, является изменение действия для SIGCHLD на SIG_IGN. В этом случае завершившиеся потомки не становятся зомби. Вместо этого статус их завершения отбрасывается, и они полностью


13.4.2. Игнорирование указателя файла

Из книги автора

13.4.2. Игнорирование указателя файла Программы, использующие бинарные файлы, часто выглядят, как показано ниже.lseek(fd, SEEK_SET, offset1);read(fd, buffer, bufferSize);offset2 = someOperation(buffer);lseek(fd, SEEK_SET, offset2);read(fd, buffer2, bufferSize2);offset3 = someOperation(buffer2);lseek(fd, SEEK_SET, offset3);read(fd, buffer3, bufferSize3);Необходимость поиска нового


Использование символа продолжения строки

Из книги автора

Использование символа продолжения строки Чтобы продолжить оператор на следующую строку, поместите в конце текущей строки символ подчеркивания ( _ ). Например, следующие три строки программного кода в совокупности определяют один оператор:sngWackyNumber = Cos(12 * 57.5 / Sqr(intMyTinyNumber +


Игнорирование файла политики публикации

Из книги автора

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


Игнорирование проверки соответствия правилам ВР 1.1

Из книги автора

Игнорирование проверки соответствия правилам ВР 1.1 В .NET 2.0 Web-сервисы XML автоматически проверяются на соответствие спецификациям базового профиля WSI версии 1.1 (ВР 1.1). В большинстве случаев это хорошо, поскольку позволяет создавать программное обеспечение с самыми


Пример 6-2. Использование символа ! для логической инверсии кода возврата

Из книги автора

Пример 6-2. Использование символа ! для логической инверсии кода возврата true # встроенная команда "true".echo "код возврата команды "true" = $?" # 0! trueecho "код возврата команды "! true" = $?" # 1# Обратите внимание: символ "!" от команды необходимо отделять пробелом.# !true вызовет сообщение


8.1.8. Игнорирование регистра символов

Из книги автора

8.1.8. Игнорирование регистра символов По умолчанию команда grep чувствительна к изменению регистра символов. Чтобы провести поиск без учета регистра, воспользуйтесь опцией -i. В файле data.f обозначение месяца Sept встречается как в верхнем, так и в нижнем регистре. Поэтому для


18.4.2. Применение символа | при поиске по шаблону

Из книги автора

18.4.2. Применение символа | при поиске по шаблону При использовании оператора case в качестве команды or можно указывать символ. Например, vt100|vt102) соответствует шаблону vt100 или vt102.В следующем примере у пользователя запрашивают тип терминала. Если пользователь вводит vt100 или


26.3.4. Игнорирование сигналов

Из книги автора

26.3.4. Игнорирование сигналов Когда пользователь регистрируется в системе, просматривается файл /etc/profile; нежелательно, чтобы пользователь прерывал этот процесс. Обычно задается перехват, или игнорирование, сигналов 1, 2, 3 и 15, но потом при просмотре сообщения motd (ежедневного


5.1.5. Форматирование символа

Из книги автора

5.1.5. Форматирование символа Символ — наименьший структурный элемент текста. Под форматированием символа понимается изменение его свойств: цвета, шрифта, начертания, межсимвольного интервала, различных спецэффектов и т. п. Свойства символа могут быть изменены разными