The file(s) are copied to the target file or directory. If the destination is a directory, then the file is copied into directory with its original filename. If the target file already exists, it is either renamed to file.old if the -b option is given or overwritten if permissions allow. An alternate backup suffix may be specified via the -B option's argument.
Syntax install [-bCcMpSsv] [-B suffix] [-f flags] [-g group] [-m mode] [-o owner] Sourcefile1 Destinationfile2 install [-bCcMpSsv] [-B suffix] [-f flags] [-g group] [-m mode] [-o owner] file1 ... fileN directory install -d [-v] [-g group] [-m mode] [-o owner] directory ...
The 3 variants above install either a single SOURCE file
to DEST target
or copy multiple SOURCE files to the destination. In the last variant,
each DIRECTORY (and any missing parent directories) is created.
Options -b Back up any existing files before overwriting them by renaming them to file.old. See -B for specifying a different backup suffix. -B suffix Use suffix as the backup suffix if -b is given. -C Copy the file. If the target file already exists and the files are the same, then don't change the modification time of the target. -c Copy the file. This is actually the default. The -c option is only included for backwards compatibility. -d Create directories. Missing parent directories are created as required. -f Specify the target's file flags; see chflags(1) for a list of possible flags and their meanings. -g Specify a group. A numeric GID is allowed. -M Disable all use of mmap(2). -m Specify an alternate mode. The default mode is set to rwxr-xr-x (0755). The specified mode can be either an octal or symbolic value; see chmod(1) for a description of possible mode values. -o Specify an owner. A numeric UID is allowed. -p Preserve the modification time. Copy the file, as if the -C (compare and copy) option is specified, except if the target file doesn't already exist or is different, then preserve the modifi- cation time of the file. -S Safe copy. Normally, install unlinks an existing target before installing the new file. With the -S flag a temporary file is used and then renamed to be the target. The reason this is safer is that if the copy or rename fails, the existing target is left untouched. -s install exec's the command strip(1) to strip binaries so that install can be portable over a large number of systems and binary types. -v Causes install to show when -C actually installs something.
By default, install preserves all file flags, with the exception of the `nodump' flag.
The install utility attempts to prevent moving a file onto itself. Installing /dev/null creates an empty file.
“SysAdmins can't be sued for malpractice but surgeons don't have to deal with patients who install new versions of their own innards”
Related macOS commands:
chflags - Change a file or folder's flags.
chgrp - Change group ownership
chmod - Change access permissions
cp - Copy one or more files to another location
mv - Move or rename files or directories
chown - Change file owner and group