Korzystając ze składni zalecanej przez podręcznik użytkownika, będzie to wyglądało tak:

old$ LC_ALL=C TZ=UTC0 diff -Naur old new > plik.patch

Po wykonaniu tej komendy plik.patch będzie miał 543 bajty i następującą zawartość:

diff -Naur old/plik.C new/plik.C --- old/plik.C 2004-08-11 11:44:16.000000000 +0000 +++ new/plik.C 2004-08-11 11:48:15.000000000 +0000 @@ -1,19 +1,21 @@ #include <iostream> +#include <string> + +using namespace std;

int main ( int argc, char **argv) { - char text = {0}; + string text;

for ( int i = 1; i < argc; ++i )

- strcat (text, argv[i]); - strcat (text, " "); + text += string(argv[i]) + " ";

- std::cout << text << std::endl; + cout << text << endl;

return 0;

Program gzip skompresował ten plik do 322 bajtów, czyli o 46%.

Zalety łatania kodu źródłowego Łaty mają dwie ważne przewagi nad rozpowszechnianiem nowych wersji programu. Po pierwsze, są mniejsze. Po drugie, o ile zmiany nie kolidują ze sobą, można zastosować kilka niezależnych łat do tych samych źródeł.