xvfb-run на Mac OSX

9699
Adi Shavit

Я пытаюсь запустить SlimerJS в автономном режиме, чтобы он не открывал видимое окно браузера на Mac OSX.

Согласно Документов SlimerJS, это может быть сделано с помощью xvfbкоторых является «доступна на Linux и MacOS», с помощью команды:

>> xvfb-run ./slimerjs myscript.js. 

Хотя OSX поставляется в комплекте с xvfb, у него нет соответствующего xvfb-runскрипта.

Как я могу получить ту же функциональность, используя xvfbверсию OSX ?

4

1 ответ на вопрос

3
mweppler

You can try something like the following (works for me with running my python test cases):

$ Xvfb :1337 & export DISPLAY=:1337 & ./slimerjs myscript.js. 
Будет хорошо, если вы сможете дать некоторое объяснение того, что будет делать эта команда. VL-80 9 лет назад 5
Не эксперт `xvfb`, но` Xvfb: 1337` запускает "* x * -window * v * irtual * f * rame * b * uffer" (xvfb), который будет выдавать себя за оконный сервер, но не будет что-нибудь записать на экран) прослушивание по порту 1337; `export DISPLAY =: 1337` устанавливает переменную env` DISPLAY` на тот же номер порта, поэтому приложения X посылают свои экранные команды на этот порт; `./slimerjs mysript.js` вызывает приложение, которое будет считать, что пишет на экране и работает без головы, как мы хотим. chesterbr 8 лет назад 0
(это может быть любой порт, но @mweppler, похоже, [leet] (https://en.wikipedia.org/wiki/Leet) человек :-)) chesterbr 8 лет назад 0
Я думаю, что xvfb-run также убивает процесс Xvfb после запуска процесса, может быть, будет полезен killall xvfb в конце? keisar 7 лет назад 0