176 lines
5.2 KiB
Groff
176 lines
5.2 KiB
Groff
.\" Copyright (c) 1994, 2019, Oracle and/or its affiliates. All rights reserved.
|
|
.\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
.\"
|
|
.\" This code is free software; you can redistribute it and/or modify it
|
|
.\" under the terms of the GNU General Public License version 2 only, as
|
|
.\" published by the Free Software Foundation.
|
|
.\"
|
|
.\" This code is distributed in the hope that it will be useful, but WITHOUT
|
|
.\" ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
|
.\" FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
|
.\" version 2 for more details (a copy is included in the LICENSE file that
|
|
.\" accompanied this code).
|
|
.\"
|
|
.\" You should have received a copy of the GNU General Public License version
|
|
.\" 2 along with this work; if not, write to the Free Software Foundation,
|
|
.\" Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
|
.\"
|
|
.\" Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
|
.\" or visit www.oracle.com if you need additional information or have any
|
|
.\" questions.
|
|
.\"
|
|
.\" Automatically generated by Pandoc 2.3.1
|
|
.\"
|
|
.TH "JRUNSCRIPT" "1" "2020" "JDK 14" "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
|