| '\" t | |
| .\" Copyright (c) 2006, 2013, 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. | |
| .\" | |
| .\" Arch: generic | |
| .\" Software: JDK 8 | |
| .\" Date: 21 November 2013 | |
| .\" SectDesc: Scripting Tools | |
| .\" Title: jrunscript.1 | |
| .\" | |
| .if n .pl 99999 | |
| .TH jrunscript 1 "21 November 2013" "JDK 8" "Scripting Tools" | |
| .\" ----------------------------------------------------------------- | |
| .\" * Define some portability stuff | |
| .\" ----------------------------------------------------------------- | |
| .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
| .\" http://bugs.debian.org/507673 | |
| .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html | |
| .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
| .ie \n(.g .ds Aq \(aq | |
| .el .ds Aq ' | |
| .\" ----------------------------------------------------------------- | |
| .\" * set default formatting | |
| .\" ----------------------------------------------------------------- | |
| .\" disable hyphenation | |
| .nh | |
| .\" disable justification (adjust text to left margin only) | |
| .ad l | |
| .\" ----------------------------------------------------------------- | |
| .\" * MAIN CONTENT STARTS HERE * | |
| .\" ----------------------------------------------------------------- | |
| .SH NAME | |
| jrunscript \- Runs a command-line script shell that supports interactive and batch modes\&. This command is experimental and unsupported\&. | |
| .SH SYNOPSIS | |
| .sp | |
| .nf | |
| \fBjrunscript\fR [\fIoptions\fR] [\fIarguments\fR] | |
| .fi | |
| .sp | |
| .TP | |
| \fIoptions\fR | |
| The command-line options\&. See Options\&. | |
| .TP | |
| \fIarguments\fR | |
| Arguments, when used, follow immediately after options or the command name\&. See Arguments\&. | |
| .SH DESCRIPTION | |
| The \f3jrunscript\fR command is a language-independent command-line script shell\&. The \f3jrunscript\fR command supports both an interactive (read-eval-print) mode and a batch (\f3-f\fR option) mode of script execution\&. By default, JavaScript is the language used, but the \f3-l\fR option can be used to specify a different language\&. By using Java to scripting language communication, the \f3jrunscript\fR command supports an exploratory programming style\&. | |
| .SH OPTIONS | |
| .TP | |
| -classpath \fIpath\fR | |
| .br | |
| Indicate where any class files are that the script needs to access\&. | |
| .TP | |
| -cp \fIpath\fR | |
| .br | |
| Same as \f3-classpath\fR\f3path\fR\&. | |
| .TP | |
| -D\fIname\fR=\fIvalue\fR | |
| .br | |
| Sets a Java system property\&. | |
| .TP | |
| -J\fIflag\fR | |
| .br | |
| Passes \f3flag\fR directly to the Java Virtual Machine where the \f3jrunscript\fR command is running\&. | |
| .TP | |
| -I \fIlanguage\fR | |
| .br | |
| Uses the specified scripting language\&. By default, JavaScript is used\&. To use other scripting languages, you must specify the corresponding script engine\&'s JAR file with the \f3-cp\fR or \f3-classpath\fR option\&. | |
| .TP | |
| -e \fIscript\fR | |
| .br | |
| Evaluates the specified script\&. This option can be used to run one-line scripts that are specified completely on the command line\&. | |
| .TP | |
| -encoding \fIencoding\fR | |
| .br | |
| Specifies the character encoding used to read script files\&. | |
| .TP | |
| -f \fIscript-file\fR | |
| .br | |
| Evaluates the specified script file (batch mode)\&. | |
| .TP | |
| -f - | |
| .br | |
| Reads and evaluates a script from standard input (interactive mode)\&. | |
| .TP | |
| -help | |
| .br | |
| Displays a help message and exits\&. | |
| .TP | |
| -? | |
| .br | |
| Displays a help message and exits\&. | |
| .TP | |
| -q | |
| .br | |
| Lists all script engines available and exits\&. | |
| .SH ARGUMENTS | |
| If arguments are present and if no \f3-e\fR or \f3-f\fR option is used, then the first argument is the script file and the rest of the arguments, if any, are passed to the script\&. If arguments and \f3-e\fR or the \f3-f\fR option are used, then all arguments are passed to the script\&. If arguments, \f3-e\fR and \f3-f\fR are missing, then interactive mode is used\&. Script arguments are available to a script in an engine variable named \f3arguments\fR of type \f3String\fR array\&. | |
| .SH EXAMPLES | |
| .SS EXECUTE\ INLINE\ SCRIPTS | |
| .sp | |
| .nf | |
| \f3jrunscript \-e "print(\&'hello world\&')"\fP | |
| .fi | |
| .nf | |
| \f3jrunscript \-e "cat(\&'http://www\&.example\&.com\&')"\fP | |
| .fi | |
| .nf | |
| \f3\fP | |
| .fi | |
| .sp | |
| .SS USE\ SPECIFIED\ LANGUAGE\ AND\ EVALUATE\ THE\ SCRIPT\ FILE | |
| .sp | |
| .nf | |
| \f3jrunscript \-l js \-f test\&.js\fP | |
| .fi | |
| .nf | |
| \f3\fP | |
| .fi | |
| .sp | |
| .SS INTERACTIVE\ MODE | |
| .sp | |
| .nf | |
| \f3jrunscript\fP | |
| .fi | |
| .nf | |
| \f3js> print(\&'Hello World\en\&');\fP | |
| .fi | |
| .nf | |
| \f3Hello World\fP | |
| .fi | |
| .nf | |
| \f3js> 34 + 55\fP | |
| .fi | |
| .nf | |
| \f389\&.0\fP | |
| .fi | |
| .nf | |
| \f3js> t = new java\&.lang\&.Thread(function() { print(\&'Hello World\en\&'); })\fP | |
| .fi | |
| .nf | |
| \f3Thread[Thread\-0,5,main]\fP | |
| .fi | |
| .nf | |
| \f3js> t\&.start()\fP | |
| .fi | |
| .nf | |
| \f3js> Hello World\fP | |
| .fi | |
| .nf | |
| \f3\fP | |
| .fi | |
| .nf | |
| \f3js>\fP | |
| .fi | |
| .nf | |
| \f3\fP | |
| .fi | |
| .sp | |
| .SS RUN\ SCRIPT\ FILE\ WITH\ SCRIPT\ ARGUMENTS | |
| The test\&.js file is the script file\&. The \f3arg1\fR, \f3arg2\fR and \f3arg3\fR arguments are passed to the script\&. The script can access these arguments with an arguments array\&. | |
| .sp | |
| .nf | |
| \f3jrunscript test\&.js arg1 arg2 arg3\fP | |
| .fi | |
| .nf | |
| \f3\fP | |
| .fi | |
| .sp | |
| .SH SEE\ ALSO | |
| If JavaScript is used, then before it evaluates a user defined script, the \f3jrunscript\fR command initializes certain built-in functions and objects\&. These JavaScript built-ins are documented in JsDoc-Toolkit at http://code\&.google\&.com/p/jsdoc-toolkit/ | |
| .RE | |
| .br | |
| 'pl 8.5i | |
| 'bp |