Разница между $ {} и $ () в Bash [дубликат]

На этот вопрос уже есть ответ здесь:

Backticks против брекетов в Баш 2 ответа

У меня есть два вопроса, и я мог бы помочь понять их.

В чем разница между${} а также$()? Я это понимаю() означает запуск команды в отдельной оболочке и размещение$ означает передачу значения в переменную. Может ли кто-нибудь помочь мне понять это? Пожалуйста, поправьте меня, если я ошибаюсь.

Если мы можем использоватьfor ((i=0;i<10;i++)); do echo $i; done и это работает хорошо, то почему я не могу использовать его какwhile ((i=0;i<10;i++)); do echo $i; done? В чем разница в цикле выполнения для обоих?

Ответы на вопрос(3)

Ваш ответ на вопрос