JRUNSCRIPT(1)

πŸ“¦ version 23.0.2.0, in opensuse-leap 16.0

JRUNSCRIPT(1) πŸ’…βœ¨

okay so bestie, welcome to the JDK Commands corner of the manual πŸ’– β€” we're talking about jrunscript, the command-line script shell that does interactive and batch mode. It's giving tiny-shell, big-exploratory-programming energy, and I'm obsessed 😌

⚠️ Note: This tool is experimental and unsupported. Not me warning you first thing, but... yeah. πŸ™ˆ

✨ NAME ✨

jrunscript β€” run a command-line script shell that supports interactive and batch modes. Periodt. πŸ’…

πŸ¦‹ SYNOPSIS πŸ¦‹

Note: This tool is experimental and unsupported.
jrunscript [options] [arguments]
  • options β€” this represents the jrunscript command-line options that can be used. See Options for the jrunscript Command below. πŸ‘€
  • arguments β€” arguments, when used, follow immediately after options or the command name. See Arguments below. πŸŽ€

πŸ’– DESCRIPTION πŸ’–

The jrunscript command is a language-independent command-line script shell. It supports both an interactive (read-eval-print) mode and a batch (-f option) mode of script execution. By default, JavaScript is the language used, but the -l option can be used to specify a different language. By using Java to scripting language communication, the jrunscript command supports an exploratory programming style. πŸ‘‘

If JavaScript is used, then before it evaluates a user defined script, the jrunscript command initializes certain built-in functions and objects. Those are documented in the API Specification for jrunscript JavaScript built-in functions. iykyk πŸ“šβœ¨

πŸŽ€ OPTIONS FOR THE JRUNSCRIPT COMMAND πŸŽ€

  • -cp path or -classpath path β€” indicates where any class files are that the script needs to access. literally the classpath bestie πŸ—‚οΈ
  • -Dname=value β€” sets a Java system property. ✨
  • -Jflag β€” passes flag directly to the Java Virtual Machine where the jrunscript command is running. πŸš€
  • -l language β€” 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 -cp or -classpath option. 🌍
  • -e script β€” evaluates the specified script. This option can be used to run one-line scripts that are specified completely on the command line. πŸͺ„
  • -encoding encoding β€” specifies the character encoding used to read script files. πŸ”€
  • -f script-file β€” evaluates the specified script file (batch mode). πŸ“„
  • -f - β€” enters interactive mode to read and evaluate a script from standard input. ⌨️
  • -help or -? β€” displays a help message and exits. πŸ†˜
  • -q β€” lists all script engines available and exits. πŸ‘―

🌸 ARGUMENTS 🌸

If arguments are present and if no -e or -f 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 -e or the -f option are used, then all arguments are passed as script arguments. If -e and -f are missing, then the interactive mode is used. 🫢

⭐ EXAMPLE OF EXECUTING INLINE SCRIPTS ⭐

jrunscript -e "print('hello world')"
jrunscript -e "cat('http://www.example.com')"

🌈 EXAMPLE OF USING SPECIFIED LANGUAGE AND EVALUATE THE SCRIPT FILE 🌈

jrunscript -l js -f test.js

πŸ¦‹ EXAMPLE OF INTERACTIVE MODE πŸ¦‹

jrunscript
js> print('Hello World\n');
Hello World
js> 34 + 55
89.0
js> t = new java.lang.Thread(function() { print('Hello World\n'); })
Thread[Thread-0,5,main]
js> t.start()
js> Hello World

js>

πŸ‘‘ RUN SCRIPT FILE WITH SCRIPT ARGUMENTS πŸ‘‘

In this example, the test.js file is the script file. The arg1, arg2, and arg3 arguments are passed to the script. The script can access these arguments with an arguments array. πŸ’…

jrunscript test.js arg1 arg2 arg3

kisses bestie, this page is from JDK 23, dated 2024, and it's the JRUNSCRIPT(1) manual β€” byeee πŸ«ΆπŸ’–

πŸ“¦ where this page comes from