Что делает оператор обратной косой черты в условных выражениях RSH?

Мне интересно узнать, что делает этот фрагмент кода RSH и есть ли в Bash что-то похожее:

if [ -z $ALPHA \
     -z $BRAVO \
     -z $CHARLIE \
     -z $DELTA ]; then

   var=$ZULU
fi

2 ответа

Решение

Эти baskslashes позволяют для продолжения линии. Это как если бы код был написан следующим образом:

if [ -z $ALPHA -z $BRAVO -z $CHARLIE -z $DELTA ]; then

   var=$ZULU
fi

От man bash

Если \<newline> появляется пара, и обратная косая черта сама по себе не указана, \<newline> трактуется как продолжение строки (то есть удаляется из входного потока и фактически игнорируется).

\ ускользает от конца строки.

Это способ сказать, что строка еще не завершена и продолжается в следующей строке.

Это просто делает ваш код проще для чтения.

Он также доступен в bash:

$ echo foo
foo
$ echo foo \
> bar
foo bar
$ 
Другие вопросы по тегам