Руководство пользователя для GNU Awk
9. Управляющие операторы в действиях
9.1 Оператор if-else
Оператор if-else есть оператор принятия решения в awk. Он выглядит так: if (condition) then-тело [else else-тело]. condition есть выражение, которое определяет действие остальной части оператора. Если condition имеет значение true, то выполняется then-тело; в противном случае выполняется else-тело. Часть else может отсутствовать. condition считается имеющим значение false, если оно равно нулю или пустой цепочке, и true в остальных случаях.
Вот пример:
if (x % 2 == 0)
print "x is even" else
print "x is odd"
В этом примере, если выражение `x % 2 == 0' есть true (т.е. значение x без остатка делится на два), выполняется первый оператор print, в противном случае выполняется второй print.
Если else стоит в той же самой строке, что и then-тело и then-тело не есть составной оператор (т.e. не заключено в фигурные скобки), то точка с запятой должна отделять then-тело от else. Чтобы проиллюстрировать это, перепишем предыдущий пример:
if (x % 2 == 0) print "x is even"; else
print "x is odd"
Если вы забудете написать `;', awk не сможет интерпретировать оператор и укажет синтаксическую ошибку. Мы не должны были на самом деле писать в таком виде этот пример, потому что читатель-человек может не заметить else, если оно не стоит в начале своей строки.
Назад | Вперед
Содержание (общее) | Содержание раздела
Если Вы не нашли что искали, то рекомендую воспользоваться поиском по сайту:
|