mfang | f2cf006 | 2015-07-15 12:12:46 -0700 | [diff] [blame] | 1 | '\" t |
| 2 | .\" Copyright (c) 2006, 2013, Oracle and/or its affiliates. All rights reserved. |
| 3 | .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
| 4 | .\" |
| 5 | .\" This code is free software; you can redistribute it and/or modify it |
| 6 | .\" under the terms of the GNU General Public License version 2 only, as |
| 7 | .\" published by the Free Software Foundation. |
| 8 | .\" |
| 9 | .\" This code is distributed in the hope that it will be useful, but WITHOUT |
| 10 | .\" ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
| 11 | .\" FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
| 12 | .\" version 2 for more details (a copy is included in the LICENSE file that |
| 13 | .\" accompanied this code). |
| 14 | .\" |
| 15 | .\" You should have received a copy of the GNU General Public License version |
| 16 | .\" 2 along with this work; if not, write to the Free Software Foundation, |
| 17 | .\" Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. |
| 18 | .\" |
| 19 | .\" Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA |
| 20 | .\" or visit www.oracle.com if you need additional information or have any |
| 21 | .\" questions. |
| 22 | .\" |
| 23 | .\" Arch: generic |
| 24 | .\" Software: JDK 8 |
| 25 | .\" Date: 21 November 2013 |
| 26 | .\" SectDesc: Scripting Tools |
| 27 | .\" Title: jrunscript.1 |
| 28 | .\" |
| 29 | .if n .pl 99999 |
| 30 | .TH jrunscript 1 "21 November 2013" "JDK 8" "Scripting Tools" |
| 31 | .\" ----------------------------------------------------------------- |
| 32 | .\" * Define some portability stuff |
| 33 | .\" ----------------------------------------------------------------- |
| 34 | .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
| 35 | .\" http://bugs.debian.org/507673 |
| 36 | .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html |
| 37 | .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
| 38 | .ie \n(.g .ds Aq \(aq |
| 39 | .el .ds Aq ' |
| 40 | .\" ----------------------------------------------------------------- |
| 41 | .\" * set default formatting |
| 42 | .\" ----------------------------------------------------------------- |
| 43 | .\" disable hyphenation |
| 44 | .nh |
| 45 | .\" disable justification (adjust text to left margin only) |
| 46 | .ad l |
| 47 | .\" ----------------------------------------------------------------- |
| 48 | .\" * MAIN CONTENT STARTS HERE * |
| 49 | .\" ----------------------------------------------------------------- |
| 50 | |
| 51 | .SH NAME |
| 52 | jrunscript \- Runs a command-line script shell that supports interactive and batch modes\&. This command is experimental and unsupported\&. |
| 53 | .SH SYNOPSIS |
| 54 | .sp |
| 55 | .nf |
| 56 | |
| 57 | \fBjrunscript\fR [\fIoptions\fR] [\fIarguments\fR] |
| 58 | .fi |
| 59 | .sp |
| 60 | .TP |
| 61 | \fIoptions\fR |
| 62 | The command-line options\&. See Options\&. |
| 63 | .TP |
| 64 | \fIarguments\fR |
| 65 | Arguments, when used, follow immediately after options or the command name\&. See Arguments\&. |
| 66 | .SH DESCRIPTION |
| 67 | 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\&. |
| 68 | .SH OPTIONS |
| 69 | .TP |
| 70 | -classpath \fIpath\fR |
| 71 | .br |
| 72 | Indicate where any class files are that the script needs to access\&. |
| 73 | .TP |
| 74 | -cp \fIpath\fR |
| 75 | .br |
| 76 | Same as \f3-classpath\fR\f3path\fR\&. |
| 77 | .TP |
| 78 | -D\fIname\fR=\fIvalue\fR |
| 79 | .br |
| 80 | Sets a Java system property\&. |
| 81 | .TP |
| 82 | -J\fIflag\fR |
| 83 | .br |
| 84 | Passes \f3flag\fR directly to the Java Virtual Machine where the \f3jrunscript\fR command is running\&. |
| 85 | .TP |
| 86 | -I \fIlanguage\fR |
| 87 | .br |
| 88 | 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\&. |
| 89 | .TP |
| 90 | -e \fIscript\fR |
| 91 | .br |
| 92 | Evaluates the specified script\&. This option can be used to run one-line scripts that are specified completely on the command line\&. |
| 93 | .TP |
| 94 | -encoding \fIencoding\fR |
| 95 | .br |
| 96 | Specifies the character encoding used to read script files\&. |
| 97 | .TP |
| 98 | -f \fIscript-file\fR |
| 99 | .br |
| 100 | Evaluates the specified script file (batch mode)\&. |
| 101 | .TP |
| 102 | -f - |
| 103 | .br |
| 104 | Reads and evaluates a script from standard input (interactive mode)\&. |
| 105 | .TP |
| 106 | -help |
| 107 | .br |
| 108 | Displays a help message and exits\&. |
| 109 | .TP |
| 110 | -? |
| 111 | .br |
| 112 | Displays a help message and exits\&. |
| 113 | .TP |
| 114 | -q |
| 115 | .br |
| 116 | Lists all script engines available and exits\&. |
| 117 | .SH ARGUMENTS |
| 118 | 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\&. |
| 119 | .SH EXAMPLES |
| 120 | .SS EXECUTE\ INLINE\ SCRIPTS |
| 121 | .sp |
| 122 | .nf |
| 123 | \f3jrunscript \-e "print(\&'hello world\&')"\fP |
| 124 | .fi |
| 125 | .nf |
| 126 | \f3jrunscript \-e "cat(\&'http://www\&.example\&.com\&')"\fP |
| 127 | .fi |
| 128 | .nf |
| 129 | \f3\fP |
| 130 | .fi |
| 131 | .sp |
| 132 | .SS USE\ SPECIFIED\ LANGUAGE\ AND\ EVALUATE\ THE\ SCRIPT\ FILE |
| 133 | .sp |
| 134 | .nf |
| 135 | \f3jrunscript \-l js \-f test\&.js\fP |
| 136 | .fi |
| 137 | .nf |
| 138 | \f3\fP |
| 139 | .fi |
| 140 | .sp |
| 141 | .SS INTERACTIVE\ MODE |
| 142 | .sp |
| 143 | .nf |
| 144 | \f3jrunscript\fP |
| 145 | .fi |
| 146 | .nf |
| 147 | \f3js> print(\&'Hello World\en\&');\fP |
| 148 | .fi |
| 149 | .nf |
| 150 | \f3Hello World\fP |
| 151 | .fi |
| 152 | .nf |
| 153 | \f3js> 34 + 55\fP |
| 154 | .fi |
| 155 | .nf |
| 156 | \f389\&.0\fP |
| 157 | .fi |
| 158 | .nf |
| 159 | \f3js> t = new java\&.lang\&.Thread(function() { print(\&'Hello World\en\&'); })\fP |
| 160 | .fi |
| 161 | .nf |
| 162 | \f3Thread[Thread\-0,5,main]\fP |
| 163 | .fi |
| 164 | .nf |
| 165 | \f3js> t\&.start()\fP |
| 166 | .fi |
| 167 | .nf |
| 168 | \f3js> Hello World\fP |
| 169 | .fi |
| 170 | .nf |
| 171 | \f3\fP |
| 172 | .fi |
| 173 | .nf |
| 174 | \f3js>\fP |
| 175 | .fi |
| 176 | .nf |
| 177 | \f3\fP |
| 178 | .fi |
| 179 | .sp |
| 180 | .SS RUN\ SCRIPT\ FILE\ WITH\ SCRIPT\ ARGUMENTS |
| 181 | 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\&. |
| 182 | .sp |
| 183 | .nf |
| 184 | \f3jrunscript test\&.js arg1 arg2 arg3\fP |
| 185 | .fi |
| 186 | .nf |
| 187 | \f3\fP |
| 188 | .fi |
| 189 | .sp |
| 190 | .SH SEE\ ALSO |
| 191 | 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/ |
| 192 | .RE |
| 193 | .br |
| 194 | 'pl 8.5i |
| 195 | 'bp |