manpagez: man pages & more
man osascript(1)
Home | html | info | man
osascript(1)              BSD General Commands Manual             osascript(1)


NAME

     osascript -- execute AppleScripts and other OSA language scripts


SYNOPSIS

     osascript [-l language] [-s flags] [-e statement | programfile]
               [argument ...]


DESCRIPTION

     osascript executes the given script.  It was designed for use with Apple-
     Script, but will work with any Open Scripting Architecture (OSA) lan-
     guage.  To get a list of the OSA languages installed on your system, use
     osalang(1).  For documentation on AppleScript itself, see
     <http://www.apple.com/applescript>.

     osascript will look for the script in one of the following three places:

     1.   Specified line by line using -e switches on the command line.

     2.   Contained in the file specified by the first filename on the command
          line.  This file may be plain text or a compiled script.

     3.   Passed in using standard input.  This works only if there are no
          filename arguments; to pass arguments to a STDIN-read script, you
          must explicitly specify ``-'' for the script name.

     Any arguments following the script will be passed as a list of strings to
     the direct parameter of the ``run'' handler.  For example:

           a.scpt:
           on run argv
               return "hello, " & item 1 of argv & "."
           end run

           % osascript a.scpt world
           hello, world.

     The options are as follows:

     -e statement
           Enter one line of a script.  If -e is given, osascript will not
           look for a filename in the argument list.  Multiple -e options may
           be given to build up a multi-line script.  Because most scripts use
           characters that are special to many shell programs (e.g., Apple-
           Script uses single and double quote marks, ``('', ``)'', and
           ``*''), the statement will have to be correctly quoted and escaped
           to get it past the shell intact.

     -l language
           Override the language for any plain text files.  Normally, plain
           text files are compiled as AppleScript.

     -s flags
           Modify the output style.  The flags argument is a string consisting
           of any of the modifier characters e, h, o, and s.  Multiple modi-
           fiers can be concatenated in the same string, and multiple -s
           options can be specified.  The modifiers come in exclusive pairs;
           if conflicting modifiers are specified, the last one takes prece-
           dence.  The meanings of the modifier characters are as follows:

           h  Print values in human-readable form (default).
           s  Print values in recompilable source form.

              osascript normally prints its results in human-readable form:
              strings do not have quotes around them, characters are not
              escaped, braces for lists and records are omitted, etc.  This is
              generally more useful, but can introduce ambiguities.  For exam-
              ple, the lists `{"foo", "bar"}' and `{{"foo", {"bar"}}}' would
              both be displayed as `foo, bar'.  To see the results in an unam-
              biguous form that could be recompiled into the same value, use
              the s modifier.

           e  Print script errors to stderr (default).
           o  Print script errors to stdout.

              osascript normally prints script errors to stderr, so downstream
              clients only see valid results.  When running automated tests,
              however, using the o modifier lets you distinguish script
              errors, which you care about matching, from other diagnostic
              output, which you don't.


SEE ALSO

     osacompile(1), osalang(1)


HISTORY

     osascript in Mac OS X 10.0 would translate `\r' characters in the output
     to `\n' and provided c and r modifiers for the -s option to change this.
     osascript now always leaves the output alone; pipe through tr(1) if nec-
     essary.

     Prior to Mac OS X 10.4, osascript did not allow passing arguments to the
     script.

Mac OS X                         June 10, 2003                        Mac OS X

Mac OS X 10.6 - Generated Thu Sep 17 20:08:15 CDT 2009
© manpagez.com 2000-2021
Individual documents may contain additional copyright information.