Есть библиотека для миграции БД (mongo-migrate - https://github.com/afloyd/mongo-migrate), она запускается следующей строкой в терминале nodejs:
node ./node_modules/mongodb-migrate -runmm -dbc '{"host":"localhost","db":"myDb","port":27017,"username":"user1","password":"pswd1"}' up
Мне нужно запустить эту команду внутри js-файла, пробую использовать require('child_process').exec
, Но не могу понять как мне передать этот JSON как параметр в exec
...
Пробовал так:
let exec = require('child_process').exec;
exec(`node ./node_modules/mongodb-migrate -runmm -dbc '{"host":"localhost","db":"myDb","port":27017,"username":"user1","password":"pswd1"}' up`,
(error, stdout, stderr) => {
if (error) {
console.error(`exec error: ${error}`);
return;
}
console.log(`${stdout}`);
console.log(`${stderr}`);
});
Но получаю ошибку:
exec error: Error: Command failed: node ./node_modules/mongodb-migrate -runmm -dbc '{"host":"localhost","db":"myDb","port":27017,"username":"user1","password":"pswd1"}' up
undefined:1
'{host:localhost,db:myDb,port:27017,username:user1,password:pswd1}'
^
SyntaxError: Unexpected token h in JSON at position 0
Такое ощущение что этот exec
как то форматирует мою исходную строку, и убирает все "
, и на выходе получается JSON невалидный...
Как мне передать JOSN как аргупент в require('child_process').exec
что бы он был без изменений?
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Как создать букмарклет? С чего начать? Дайте направление
Есть такое определение класса:
В новом обновлении Телеграм, появилась возможность установки html код с сообщением из каналовКод выглядит примерно так <script async src="https://telegram
Я считываю все содержимое HTML страницы и отображаю его на ней же после этогоЕдинственная разница, я хочу изменять некоторые части страницы...