arch [-32] [-64] [[-arch_name | -arch arch_name]…] [-c] [-d envname]… [-e envname=value]... [-h] prog [args … ]
With no arguments, displays the machine's architecture type.
Run a selected architecture of a universal binary.
The most common use is to select the 32-bit architecture on a 64-bit processor, even if a 64-bit architecture is available.
progfull or partial path of the command to run, followed by any arguments.
If no architectures are specified on the command line, the arch command takes the basename of
searches for the first
in the following order:
When a symbolic link is made to
arch it is used to find the
$ARCHPREFERENCEprovides order preferences before looking for the
.plist. It is composed of one or more specifiers, separated by semicolons.
When a name is specified in a ARCHPREFERENCE specifier, the path information can alternately be specified as a second field following the name. When the arch command is called indirectly via a link, this path information must be specified. If not specified as a second field in a specifier, the executable path will be looked up in the corresponding property list file. EXAMPLES archSettings Property List Format
SEE machine(1) BUGS: Running the arch command on an interpreter script may not work if the interpreter is a link to the arch command.
ARCHPREFERENCE Values i386,x86_64,x86_64h,arm64,arm64e A specifier that matches any name. foo:i386,x86_64,x86_64h,arm64,arm64e A specifier that matches the program named foo (the full executable path is in the foo.plist file). foo:/op/bin/boo:i386,x86_64,x86_64h,arm64,arm64e A specifier with all fields specified. baz:i386;x86_64;x86_64h,arm64,arm64e A specifier for baz and a second specifier that would match any other name. ExecutablePath $execpath PreferredOrder x86_64 arm64 PropertyListVersion 1.0