Я подозреваю, что вы забыли заключить URL в одинарные кавычки.Наличие символа & указывает вашей оболочке, что она должна выполнить команду в фоновом режиме (а часть 'number = 23' просто игнорируется).
try;
curl -X PUT 'https://server/db/_design/doc/_update/addChannel/channels?name=myChannel&number=23'
иЯ подозреваю, что это будет работать.
Я также отмечу, что функция может быть написана более просто как;
function(doc,req) {
doc.channels.push({"name":req.query.name, "number": parseInt(req.query.number)});
return [doc, channel + ' added'];
}
Обратите внимание, что "23" будет передано как строка, поэтомуЯ также добавил вызов parseInt.