Или я отсутствовал, некоторая обратная реакция или вызывание отрицательной реакции, кажется, не работают со слишком большим цикличным выполнением кавычки программиста.
$ echo "hello1-`echo hello2-\`echo hello3-\`echo hello4\`\``"
hello1-hello2-hello3-echo hello4
Требуемый
hello1-hello2-hello3-hello4-hello5-hello6-...
Вместо этого используйте $ (команды)
:
$ echo "hello1-$(echo hello2-$(echo hello3-$(echo hello4)))"
hello1-hello2-hello3-hello4
$ (команды)
делают то же самое, что и обратные кавычки, но их можно вкладывать.
Вас также могут заинтересовать расширения диапазона Bash:
echo hello{1..10}
hello1 hello2 hello3 hello4 hello5 hello6 hello7 hello8 hello9 hello10
если вы настаиваете на использовании обратных кавычек, можно сделать следующее
$ echo "hello1-`echo hello2-\`echo hello3-\\\`echo hello4\\\`\``"
вам нужно поставить обратную косую черту , \\ \\\\ \\\\\\\\
на 2x и так далее, это просто очень некрасиво, используйте $ (commands)
как другие предложенные.
Намного проще использовать синтаксис подстановки команд $ (cmd)
в bash, который гораздо удобнее вложенные:
$ echo "hello1-$(echo hello2-$(echo hello3-$(echo hello4)))"
hello1-hello2-hello3-hello4