Главная / Основы UNIX / Утилиты diff и patch
Утилиты diff и patch PDF Печать E-mail
Статьи - Основы UNIX

Утилиты diff и patch

Программа diff выводит на stdout разницу между текстовыми файлами или оглавлениями каталогов в формате, который пригоден для последующего использования программой patch. При сравнении двоичных файлов программа diff только сообщает, совпадают или различаются между собой сравниваемые файлы.

Сравнение каталогов

$ diff каталог1 каталог2

Сравнение двоичных файлов

$ diff /bin/ls /usr/bin/lsvfs
Binary files /bin/ls and /usr/bin/lsvfs differ

Сравнение текстовых файлов

$ cat hello.c
#include <stdio.h>
main () {
printf("Hello World\n");
}

$ cp hello.c hello.c.old
$ ee hello.c

$ cat hello.c
#include
main () {
printf("Hello World Again\n");
}
$ diff hello.c.old hello.c
3c3
< printf("Hello World\n");
---
> printf("Hello World Again\n");
$ diff hello.c.old hello.c > patch.txt

Копируем patch.txt на машину со старым hello.c

$ patch hello.c patch.txt
Hmm... Looks like a normal diff to me...
Patching file wares.txt using Plan A...
Hunk #1 succeeded at 3.
done

$ cat hello.c
#include <stdio.h>
main () {
printf("Hello World Again\n");
}

"Hello World Again\n");
}

 

 

Добавить комментарий


Защитный код
Обновить