Я не могу понять, как вызвать команду bash из Haxe - PullRequest
1 голос
/ 19 мая 2019

Я пытаюсь создать очень специализированную «рабочую среду» для некоторых младших членов семьи, использующих Armory 3D, использующую Haxe в качестве бэкэнда. Это в основном интерфейс с киосками поверх Linux, который позволяет пользователям запускать только определенные программы и игры. У меня есть событие кнопки, связанное с функцией, которая должна запускать системное приложение через bash. Проблема в том, что я не знаю, как вызывать bash (или любой другой вид скрипта / команды / программы) через Haxe.

Я пробовал искать в Интернете, например, код. Я видел, как люди используют -cmd <command> и Sys.command('<command>'), но я не уверен, как использовать эти команды или если для их запуска требуется определенная настройка.

Это будет работать на 64-битной Linux:

import Sys;
import iron.App;
import armory.system.Event;
import armory.trait.internal.CanvasScript;
...
            // Notify on button click
            Event.add("menu.Opera", runOpera);
        });
    }

    function runOpera() {
        Sys.command('bash opera');
    //  -cmd    'bash /usr/bin/opera';
    }
}

Я хочу, чтобы он просто запустил браузер Opera, потому что моя «среда рабочего стола» будет использовать браузеры довольно часто. Он ничего не запускает независимо от метода, который я пытаюсь использовать для запуска приложений. Я получаю эту ошибку при использовании Sys.command('<command>');:

27: characters 3-14 : Accessing this field requires a system platform (php,neko,cpp,etc.)

А при использовании -cmd '<command>'; получаю:

28: characters 4-7 : Missing ;

У меня такое чувство, что я что-то тут напутал, но у меня нет предварительных знаний о синтаксисе Haxe.

[редактировать] Я хотел бы отметить, что я искал практически везде и не могу найти ничего надежного для запуска системных приложений из Haxe.

...