$1
не разрешается, потому что вы используете одиночные отметки '
, которые запрещают переменное разрешение.
вместо этого используйте двойные тики ("
) (вам придется избегать двойных кавычек внутри двойных кавычек или использовать одинарные кавычки в двойных кавычках; в зависимости от вашего контекста)
ctests() {
curl -X POST \
http://route.to.host/cucumber/execute-tests \
-H 'Authorization: Basic xxxxxxxxxxxxxxxxxxxxx' \
-H 'Content-Type: application/json' \
-H 'cache-control: no-cache' \
-d "{ \"text\": \"cucumber! alltests products=$1\" }"
}
цитата bash(1)
:
Цитирование
[...]
Заключение символов в одинарные кавычки сохраняет буквальное значение каждого символа в кавычках. Одиночная кавычка может отсутствовать между одинарными кавычками, даже если ей предшествует обратная косая черта.
Заключение символов в двойные кавычки сохраняет буквальное значение всех символов в кавычках, за исключением $ [...]