8

Почему SOMETHING=1 && echo $SOMETHING нужно && для возврата 1
Почему SOMETHING=1 echo $SOMETHING возвращает 1

2 ответа2

6

Потому что bash выполняет раскрытие переменных перед интерпретацией операторов присваивания переменных. Итак, так как ЧТО-ТО не было предварительно определено, ваша команда становится ...

SOMETHING=1 echo ''

... затем исполняется.

0

экспорт и эхо одновременно

root@kali:~# echo ${SOMETHING=1}
1
root@kali:~# echo $SOMETHING
1
root@kali:~# unset SOMETHING
root@kali:~# echo $SOMETHING

root@kali:~# echo ${SOMETHING=1}
1
root@kali:~# 

Еще один тупой пример xD

root@kali:~# echo ${SOMETHING=1} ${PLUS=+} ${SUMTHIN=2} ${EQUALS==} && expr $SOMETHING $PLUS $SUMTHIN
1 + 2 =
3
root@kali:~# 

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .