Linux Command Directory
This directory of Linux commands is from Linux in a Nutshell, 5th Edition.
Click on any of the 687 commands below to get a description and list of available options. All links in the command summaries point to the online version of the book on Safari Bookshelf.
merge [options] file1 file2 file3
Perform a three-way file merge, putting the result in file1. The effect is easiest to understand if file2 is considered the original version of a file, file3 an altered version of file2, and file1 a later altered version of file2.
After the merge, file1 contains both the changes from file2 to file1 and the changes from file2 to file3. In other words, file1 keeps its changes and incorporates the changes in file3 as well. merge does not change file2 or file3.
If a line from file2 was changed in different ways in both file1 and file3, merge recognizes a conflict. By default, the command outputs a warning and puts brackets around the conflict, with lines preceded by <<<<<<< and >>>>>>>. A typical conflict looks like this:
<<<<<<< file1 relevant lines from file1 ======= relevant lines from file3 >>>>>>> file3
If there are conflicts, the user should edit the result and delete one of the alternatives.
Don't warn about conflicts.
Send results to standard output instead of overwriting file1.
Quiet; do not warn about conflicts.
Output conflicts using the -A style of diff3. This merges all changes leading from file2 to file3 into file1 and generates the most verbose output.
Output conflict information in a less verbose style than -A; this is the default.
Specify up to three labels to be used in place of the corresponding filenames in conflict reports. That is:
merge -L x -L y -L z file_a file_b file_c
generates output that looks as if it came from x, y, and z instead of from file_a, file_b, and file_c.
Print version number.