executeperlscript
executeperlscript
SOURCE
,
RESULT
,
FOLDER
,
TIMEOUT

The executeperlscript statement executes Perl code.

Parameters

This statement has four parameters:

source – Perl source code.

result – script output sent to stdout.

folder – folder to execute Perl script in (default to current database folder)

timeout – Timeout in seconds (default is 60 if not supplied).

Description

This statement executes a Perl script. Using special tags, the script can access formulas that use Panorama fields and variables (including local variables). (The formulas are actually calculated in advance, then substituted into the Perl code as constants.)

> WARNING: Apple has stopped providing Perl with macOS. If you are using a recent version of macOS, you will have to install Perl yourself. See Scripting Language Configuration to learn how to do this.

To embed a Panorama formula that has a text result into the Perl code, use this syntax:

    "«formula»"

To embed a numeric formula, use this syntax:

    #«formula»#

Here is a silly example that displays the time (of course this could be done from within Panorama, without using Perl).

    local pr
    executeperlscript |||print "Hello from Panorama "«timepattern(now(),"hh:mm:ss am/pm")»"+“\n"|||,pr
    message pr

Note: This statement has been superceded by the perl statement and perl( functions. Use these for new applications.

See Also

- applescript -- executes an AppleScript.
- applescript( -- executes AppleScript source code and returns the result.
- blindposixscript( -- executes a POSIX shell script using NSTask and returns the process id.
- executeapplescript -- compiles and runs an AppleScript.
- executesudounix -- executes a UNIX shell command using *sudo* (root) privileges.
- executeunix -- executes a UNIX shell command.
- info("posixtasks") -- list of POSIX shell tasks running in the background.
- perl -- executes a Perl script (program).
- perl( -- executes a perl program and returns the result (stdout).
- php -- executes a PHP script (program).
- php( -- executes a PHP program and returns the result.
- posixscript( -- executes a POSIX shell script using NSTask and returns the result.
- posixtask -- executes a POSIX shell script in the background using NSTask.
- posixtask( -- executes a POSIX shell script in the background using NSTask.
- python -- executes a Python script (program).
- python( -- executes a python program and returns the result (stdout).
- ruby -- executes a Ruby script (program).
- ruby( -- executes a ruby program and returns the result (stdout).
- scriptbglog -- specifies a path/file for output from STDOUT from embedded programs run in the background (Perl, Ruby, Python, PHP).
- Scripting Language Configuration -- configuring the scripting languages available to Panorama (Perl, PHP, Python and Ruby).
- scripttimeout -- sets the maximum runtime allowed for an embedded program (AppleScript, ShellScript, Perl, Ruby or Python).
- shellscript -- executes a UNIX shell script.
- shellscript( -- executes a UNIX shell script and returns the result.
- stopposixtask -- stops a POSIX shell script that is running in the background.
- usebashprofile -- grabs the search path from the `.Bash_profile` file in the user's home folder, so that these paths will be used by scripting languages (*Ruby, Python*, etc.).
- xcallbackurl -- performs an action in another application using the x-callback-url mechanism.

History

Version | Status | Notes
10.0 | No Change | Carried over from Panorama 6.0.