Назад | Перейти на главную страницу

как сравнить данные файлов в 2 разных ящиках unix

У меня есть один файл, который существует на двух разных машинах unix. как я могу сравнить данные в файле

Вы можете сравнивать файлы удаленно, используя ssh:

$ ssh -p 2022 localhost "cat /remote_path" | diff - /local_path
$ ssh -p 2022 localhost "cat /etc/lsb-release" | diff - /etc/lsb-release
2,4c2,4
< DISTRIB_RELEASE=10.10
< DISTRIB_CODENAME=maverick
< DISTRIB_DESCRIPTION="Ubuntu 10.10"
---
> DISTRIB_RELEASE=10.04
> DISTRIB_CODENAME=lucid
> DISTRIB_DESCRIPTION="Ubuntu 10.04.2 LTS"

Или используйте sshfs / nfs.

кратчайший способ определить, являются ли они «одинаковыми», - это

md5sum в каждом поле и сравните, совпадает ли md5sums (или другая сумма)

если вы хотите различать их, скопируйте один файл в другой ящик и сравните его.

Удаленно? У вас работает NFS? Каталог, содержащий файл одной из машин, смонтирован на другой машине? Вы можете проверить это с помощью "df".

Если у вас нет NFS или каталог не смонтирован, вам придется скопировать файл. Вы можете использовать "scp" для копирования файла.

Для сравнения используйте diff или, если установлен, kdiff3 или mgdiff хороши. "diff -y" показывает параллельный вывод.

vimdiff file scp://login@server//pathto/file

двойной / после сервера не опечатка