Как передать текстовый файл, содержащий аргументы mongod, команде mongod

Итак, обычно я запускаю процесс mongod с двумя аргументами, подобными этому

~$ mongod --dbpath /media/nhuyvan1106/0CB6-189A/linux/mongodb/data --logpath /media/nhuyvan1106/0CB6-189A/linux/mongodb.

Но я не хочу указывать аргументы каждый раз, поэтому я их сохранил в текстовый файл с именем mongo.txt с этим следующим контентом.

--dbpath /media/nhuyvan1106/0CB6-189A/linux/mongodb/data --logpath /media/nhuyvan1106/0CB6-189A/linux/mongodb

Затем I cat, который записывает и передает его через mongod, как это

~$ cat mongod.txt | mongod

Но это не сработает, mongod по-прежнему использует значение по умолчанию /data/db для аргумента --dbpath и такое же для другого аргумента. Кто-нибудь знает, как я могу это достичь?

1
задан 28 January 2017 в 02:39

1 ответ

Ubuntu и все дистрибутивы Linux с установленными утилитами GNU имеют xargs, что позволяет запускать команду с аргументами, переданными из другой команды или из предоставленного из stdin. В вашем случае то, что вы хотели бы сделать, следующее:

xargs  mongod < mongo_args.txt

Здесь у вас есть mongo_args.txt, который является текстовым файлом с вашими аргументами, и он перенаправляется как stdin в xargs. Это будет объединено с mongod и будет выполняться как полная команда.

2
ответ дан 23 May 2018 в 02:00

Другие вопросы по тегам:

Похожие вопросы: