Here is a summary of all of the options that GNU
accepts. See patch and Tradition, for which of these options are
safe to use in older versions of
Multiple single-letter options that do not take an argument can be combined into a single command line argument with only one dash.
Back up the original contents of each file, even if backups would normally not be made. See Backups.
Prepend prefix to backup file names. See Backup Names.
Back up the original contents of each file if the patch does not exactly match the file. This is the default behavior when not conforming to POSIX. See Backups.
Read and write all files in binary mode, except for standard output and /dev/tty. This option has no effect on POSIX-conforming systems like GNU/Linux. On systems where this option makes a difference, the patch should be generated by ‘diff -a --binary’. See Binary.
Interpret the patch file as a context diff. See patch Input.
Make directory directory the current directory for interpreting both file names in the patch file, and file names given as arguments to other options. See patch Directories.
Make merged if-then-else output using name. See If-then-else.
Print the results of applying the patches without actually changing any files. See Dry Runs.
Interpret the patch file as an
ed script. See patch Input.
Remove output files that are empty after the patches have been applied. See Creating and Removing.
Assume that the user knows exactly what he or she is doing, and do not ask any questions. See patch Messages.
Set the maximum fuzz factor to lines. See Inexact.
If num is positive, get input files from a revision control system as necessary; if zero, do not get the files; if negative, ask the user whether to get the files. See Revision Control.
Output a summary of usage and then exit.
Read the patch from patchfile rather than from standard input. See patch Options.
Let any sequence of blanks (spaces or tabs) in the patch file match any sequence of blanks in the input file. See Changed White Space.
Interpret the patch file as a normal diff. See patch Input.
Ignore patches that
patch thinks are reversed or already applied.
See also -R. See Reversed Patches.
Do not back up the original contents of files. This is the default behavior when conforming to POSIX. See Backups.
Use file as the output file name. See patch Options.
Set the file name strip count to number. See patch Directories.
Conform to POSIX, as if the
variable had been set. See patch and POSIX.
Use style word to quote names in diagnostics, as if the
QUOTING_STYLE environment variable had been set to word.
See patch Quoting Style.
Use reject-file as the reject file name. See Reject Names.
Assume that this patch was created with the old and new files swapped. See Reversed Patches.
Work silently unless an error occurs. See patch Messages.
Do not ask any questions. See patch Messages.
Set the modification and access times of patched files from timestamps given in context diff headers, assuming that the context diff headers use local time. See Patching Timestamps.
Interpret the patch file as a unified diff. See patch Input.
Output version information and then exit.
Select the naming convention for backup file names. See Backup Names.
Print more diagnostics than usual. See patch Messages.
Set internal debugging flags. Of interest only to
Prepend prefix to base names of backup files. See Backup Names.
Use suffix as the backup extension instead of ‘.orig’ or ‘~’. See Backup Names.
Set the modification and access times of patched files from timestamps given in context diff headers, assuming that the context diff headers use UTC. See Patching Timestamps.