2014-12-04 6 views
0

У меня есть приложение python, которое запускает websocket на порт, который указан как параметр для приложения python. Я успешно завершил передачу аргументов через пакетный (.bat) файл в окнах. В окне я передаю параметр следующим образом: python server.py -p 8000Передача параметров скрипту python из файла bash

Теперь мне нужно добиться того же в ubuntu 12.04 через файл bash. Я запускаю приложение python как службу из файла bash. Код Баш файла:

PYPATH="/usr/bin/python" 
DEAMON="./server.py" 

start-stop-daemon --start --background --name $DEAMONNAME --pidfile $PIDFILE --make-pidfile --user $USER --group $USER --chuid $USER -d $WORKINGDIR --exec $PYPATH $DEAMON 

Это прекрасно работает, когда я бегу, как это, но он принимает порт по умолчанию. прохожу параметр следующим образом:

DEAMON="./server.py -p 8004" 

Это дает мне следующую ошибку:

start-stop-daemon: invalid option -- 'y' 
Try 'start-stop-daemon --help' for more information. 
...fail! 

Пожалуйста, может ли один помочь мне в переходе параметра к приложению питона из Баш файла для достижения того же эффекта, в окнах?

Заранее спасибо.

+0

см http://manpages.ubuntu.com/manpages/lucid/man8 /start-stop-daemon.8.html, но этот вопрос относится скорее к суперпользователю ... –

ответ

1

Переместить любые аргументы не предназначены непосредственно для start-stop-daemon в самом конце команды после того, как -- так, чтобы они проходили через:

PYPATH="/usr/bin/python" 
DEAMON="./server.py -p 8004" 

start-stop-daemon --start --background --name $DEAMONNAME --pidfile $PIDFILE --make-pidfile --user $USER --group $USER --chuid $USER -d $WORKINGDIR --exec $PYPATH -- $DEAMON 
Смежные вопросы