Search code examples
scriptingwolfram-mathematicamathematica-frontend

mathematica start front end and eval notebook from command line


Is there a way to start up a mathematica front end (GUI) from a (Windows) command prompt and have it eval a notebook without further user action?

even though mathematica.exe takes the -run and -initfile options they dont work the same as they do with math.exe. (-run ''<<file.m'' wants to open a file named ''<<file.m'' for example)


Thanks. The first answer looks promising, however I get FrontEndObject::notavail A front end is not available

(per docs it is "UseFrontEnd" by the way.)

Perhaps a path issue, however even after setting $FrontEndLaunchCommand no joy..

Re: Initialization Cell -- that simple answer would seem to do exactly what I need excepting for the "do you want to run initialization.." nag box. If there is an option somplace to automatically start a kernel and run initialization cells that would be really useful to know.

I'm running 6.0 by the way.


Solution

  • Aha...!!

    Needs["JLink`"]; 
    $FrontEndLaunchCommand="C:\\Program Files\\Wolfram Research\\Mathematica\\6.0\\Mathematica.exe";
    ConnectToFrontEnd[];
    UseFrontEnd[Module[{}, ...
    

    follow up..for completeness --- the above $FrontEndLaunchCommand causes the GUI to come up so you can observe the evaluation (What I wanted). The default is to run a front end in a background server mode, so you have acess to front end functions but cant see it run.