EVOLUTION-MANAGER
Edit File: jrunscript.1
.\" Automatically generated by Pandoc 2.3.1 .\" .TH "JRUNSCRIPT" "1" "2023" "JDK 17.0.8" "JDK Commands" .hy .SH NAME .PP jrunscript \- run a command\-line script shell that supports interactive and batch modes .SH SYNOPSIS .PP \f[B]Note:\f[R] .PP This tool is \f[B]experimental\f[R] and unsupported. .PP \f[CB]jrunscript\f[R] [\f[I]options\f[R]] [\f[I]arguments\f[R]] .TP .B \f[I]options\f[R] This represents the \f[CB]jrunscript\f[R] command\-line options that can be used. See \f[B]Options for the jrunscript Command\f[R]. .RS .RE .TP .B \f[I]arguments\f[R] Arguments, when used, follow immediately after options or the command name. See \f[B]Arguments\f[R]. .RS .RE .SH DESCRIPTION .PP The \f[CB]jrunscript\f[R] command is a language\-independent command\-line script shell. The \f[CB]jrunscript\f[R] command supports both an interactive (read\-eval\-print) mode and a batch (\f[CB]\-f\f[R] option) mode of script execution. By default, JavaScript is the language used, but the \f[CB]\-l\f[R] option can be used to specify a different language. By using Java to scripting language communication, the \f[CB]jrunscript\f[R] command supports an exploratory programming style. .PP If JavaScript is used, then before it evaluates a user defined script, the \f[CB]jrunscript\f[R] command initializes certain built\-in functions and objects, which are documented in the API Specification for \f[CB]jrunscript\f[R] JavaScript built\-in functions. .SH OPTIONS FOR THE JRUNSCRIPT COMMAND .TP .B \f[CB]\-cp\f[R] \f[I]path\f[R] or \f[CB]\-classpath\f[R] \f[I]path\f[R] Indicates where any class files are that the script needs to access. .RS .RE .TP .B \f[CB]\-D\f[R]\f[I]name\f[R]\f[CB]=\f[R]\f[I]value\f[R] Sets a Java system property. .RS .RE .TP .B \f[CB]\-J\f[R]\f[I]flag\f[R] Passes \f[I]flag\f[R] directly to the Java Virtual Machine where the \f[CB]jrunscript\f[R] command is running. .RS .RE .TP .B \f[CB]\-l\f[R] \f[I]language\f[R] Uses the specified scripting language. By default, JavaScript is used. To use other scripting languages, you must specify the corresponding script engine\[aq]s JAR file with the \f[CB]\-cp\f[R] or \f[CB]\-classpath\f[R] option. .RS .RE .TP .B \f[CB]\-e\f[R] \f[I]script\f[R] Evaluates the specified script. This option can be used to run one\-line scripts that are specified completely on the command line. .RS .RE .TP .B \f[CB]\-encoding\f[R] \f[I]encoding\f[R] Specifies the character encoding used to read script files. .RS .RE .TP .B \f[CB]\-f\f[R] \f[I]script\-file\f[R] Evaluates the specified script file (batch mode). .RS .RE .TP .B \f[CB]\-f\ \-\f[R] Enters interactive mode to read and evaluate a script from standard input. .RS .RE .TP .B \f[CB]\-help\f[R] or \f[CB]\-?\f[R] Displays a help message and exits. .RS .RE .TP .B \f[CB]\-q\f[R] Lists all script engines available and exits. .RS .RE .SH ARGUMENTS .PP If arguments are present and if no \f[CB]\-e\f[R] or \f[CB]\-f\f[R] option is used, then the first argument is the script file and the rest of the arguments, if any, are passed as script arguments. If arguments and the \f[CB]\-e\f[R] or the \f[CB]\-f\f[R] option are used, then all arguments are passed as script arguments. If arguments \f[CB]\-e\f[R] and \f[CB]\-f\f[R] are missing, then the interactive mode is used. .SH EXAMPLE OF EXECUTING INLINE SCRIPTS .RS .PP \f[CB]jrunscript\ \-e\ "print(\[aq]hello\ world\[aq])"\f[R] .RE .RS .PP \f[CB]jrunscript\ \-e\ "cat(\[aq]http://www.example.com\[aq])"\f[R] .RE .SH EXAMPLE OF USING SPECIFIED LANGUAGE AND EVALUATE THE SCRIPT FILE .RS .PP \f[CB]jrunscript\ \-l\ js\ \-f\ test.js\f[R] .RE .SH EXAMPLE OF INTERACTIVE MODE .IP .nf \f[CB] jrunscript js>\ print(\[aq]Hello\ World\\n\[aq]); Hello\ World js>\ 34\ +\ 55 89.0 js>\ t\ =\ new\ java.lang.Thread(function()\ {\ print(\[aq]Hello\ World\\n\[aq]);\ }) Thread[Thread\-0,5,main] js>\ t.start() js>\ Hello\ World js> \f[R] .fi .SH RUN SCRIPT FILE WITH SCRIPT ARGUMENTS .PP In this example, the \f[CB]test.js\f[R] file is the script file. The \f[CB]arg1\f[R], \f[CB]arg2\f[R], and \f[CB]arg3\f[R] arguments are passed to the script. The script can access these arguments with an arguments array. .RS .PP \f[CB]jrunscript\ test.js\ arg1\ arg2\ arg3\f[R] .RE