Что делает оператор обратной косой черты в условных выражениях RSH? - PullRequest
1 голос
/ 22 января 2011

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

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

   var=$ZULU
fi

Ответы [ 2 ]

2 голосов
/ 22 января 2011

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

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

   var=$ZULU
fi

С man bash

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

1 голос
/ 22 января 2011

\ экранирует конец строки.

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

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

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

$ echo foo
foo
$ echo foo \
> bar
foo bar
$ 
...