Check for and install new and updated software versions based on information about your computer and current software.
Syntax
softwareupdate command [args ...]
Options
-l
--list
List all available macOS and some software updates, but not security data updates.
To include security data updates use:
-l --include-config-data
--background
Trigger a background check with a forced scan.
-d
--download
Each update specified by args is downloaded but not installed.
The values of args are the same as for the --install command.
Updates downloaded with --download can be subsequently installed with --install, or through
System Settings (as long as they remain applicable to your system).
To include security data updates use:
-d --include-config-data [label]
where [label] is that given in the list of available updates.
-i
--install
Each update specified by args is downloaded, unarchived, and installed.
This command requires root.
args can be one of the following:
item ... One or more update names.
The --list output shows the item names you can specify here, prefixed by
the * or - characters.
-a | --all All available active updates.
-r | --recommended
All updates that are recommended for your system.
These are prefixed with a * character in the --list output.
--os-only Only macOS updates
--safari-only
Only Safari updates
-R | --restart
Automatically restart if required to complete installation.
If the user invoking this tool is logged in then macOS will attempt to quit
all applications, logout, and restart.
If the user is not logged in, macOS will trigger a forced reboot if necessary.
If you wish to always perform a forced reboot, use --force.
--stdinpass
Collect a password from STDIN without interaction. Apple silicon only.
--user An owner user to authorize installation. Apple silicon only.
--list-full-installers
List the available macOS Installers.
--fetch-full-installer [--full-installer-version version.number]
Install the latest recommended macOS Installer.
Use --full-installer-version to specify the version of macOS to install
(e.g. --full-installer-version 15.7).
Use --launch-installer to launch the installer automatically after it has been downloaded.
This option is available in Catalina (10.15) and greater
--install-rosetta
Install Rosetta. Only applies to Apple silicon Macs.
Pass --agree-to-license to agree to the software license agreement without any user interaction.
--ignore ...
Manage the per-user list of ignored updates (no longer supported).
--reset-ignored
Clear the list of all ignored updates (no longer supported).
--schedule Returns the per-machine automatic (background) check preference.
--schedule on
--schedule off
Enable or disable automatic checking.
-h
--help
Print command usage.
Files:
/usr/sbin/softwareupdate
/Library/Updates - Downloaded security data updates (in hidden sub-folders)
Variable: COMMAND_LINE_INSTALL Set when downloading or installing using the softwareupdate command. Scripts can check for the existence of this variable to determine if they are executing in a command line environment (i.e. there may be no WindowServer available).
Install all available Software Updates:
$ sudo softwareupdate -ia
List all available updates:
$ softwareupdate --list
! iPhoto-2.0
iPhoto, 2.0, 34100K [recommended]
! iSync-1.0
iSync, 1.0, 4840K [recommended]
! StuffItExpander7-7.0
StuffIt Expander Security Update, 7.0, 4420K [recommended]
Install all available updates and reboot, passing a password via the pipe/STDIN:
$ echo "$1" | sudo -u root softwareupdate --install --all --restart --force --no-scan --agree-to-license --user "Fred" --stdinpass
Download a specific version of macOS:
macOS Sequoia:
$ softwareupdate --fetch-full-installer --full-installer-version 15.7.2
macOS Sonoma:
$ softwareupdate --fetch-full-installer --full-installer-version 14.1
macOS Ventura:
$ softwareupdate --fetch-full-installer --full-installer-version 13.6.1
macOS Monterey:
$ softwareupdate --fetch-full-installer --full-installer-version 12.7.1
macOS Catalina:
$ softwareupdate --fetch-full-installer --full-installer-version 10.15.4
Install iCal:
$ softwareupdate --install iCal-1.0.2
Software Update Tool
Copyright 2002-2003 Apple Computer, Inc.
Installing iCal:
0...10...20...30...40...50...60...70...80...90...100 Done.
Check if Auto-updates are turned on:
$ softwareupdate --schedule
Automatic check is on
Ignore updates for iPhoto:
$ softwareupdate --ignore iPhoto
“If you stuff yourself full of poems, essays, plays, stories, novels, films, comic strips, magazines, music, you automatically explode every morning like old faithful. I have never had a dry spell in my life, mainly because I feed myself well, to the point of bursting. I wake early and hear my morning voices leaping around in my head like jumping beans. I get out of bed to trap them before they escape” ~ Ray Bradbury
Local man page: softwareupdate - Command line help page on your local machine.
How to downgrade from macOS 26 Tahoe on a new Mac - ArsTechnica.
install - Copy files and set attributes.
installer - System software and .pkg package installer tool.