Найти разницу в выводе двух команд c помощью diff

Искусство написания bash скриптов. Делимся своими наработками
Ответить
Аватара пользователя
ZEN
Администратор
Сообщения: 1358
Зарегистрирован: 27 сен 2012, 18:23
Темы: 208
Откуда: Украина, Одесса
Статус: Не в сети

Найти разницу в выводе двух команд c помощью diff

Сообщение ZEN » 26 дек 2014, 15:06

Допустим, что у нас есть две команды. Первая выводит текст:

Код: Выделить всё

aaa
ccc
bbb
Вторая команда выводит текст

Код: Выделить всё

bbb
ccc
aaa
Что бы быстро увидеть разницу в этих двух выводах, можно воспользоваться следующей командой

Код: Выделить всё

$ diff -u <(echo -e "aaa\nccc\nbbb") <(echo -e "bbb\nccc\naaa")
--- /dev/fd/63	2014-12-26 15:00:38.707000530 +0200
+++ /dev/fd/62	2014-12-26 15:00:38.707000530 +0200
@@ -1,3 +1,3 @@
-aaa
-ccc
 bbb
+ccc
+aaa
Естественно вместо echo в примере выше, можно использовать вызов других команд. Например, разница вывода команд pwd:

Код: Выделить всё

$ diff -u <(cd /var; pwd) <(pwd)
--- /dev/fd/63	2014-12-26 15:05:20.478631068 +0200
+++ /dev/fd/62	2014-12-26 15:05:20.478631068 +0200
@@ -1 +1 @@
-/var
+/home/zen
бог создал труд и обезьяну
чтоб получился человек
а вот пингвина он не трогал
тот сразу вышел хорошо

Аватара пользователя
nk
Модератор
Сообщения: 413
Зарегистрирован: 14 сен 2014, 00:35
Темы: 78
Статус: Не в сети

Re: Найти разницу в выводе двух команд c помощью diff

Сообщение nk » 27 дек 2014, 06:25

Да , интересно. Примерно так и создаются патчи, ну и применяется: patch -p1 < $CWD/gcc-4.7.patch
н-р: http://slackbuilds.org/repository/14.1/games/xmoto/

Мне же еще в KDE нравитсь Kompare, которая наглядно показывает какие строки изменились
https://ru.wikipedia.org/wiki/Kompare

Изображение

Ну это уже уходя в тему .patch, просто написал, мало ли кому-то понадобится)
• Web: Firefox • Jabber: Gajim • WM: Openbox
Изображение

Аватара пользователя
ZEN
Администратор
Сообщения: 1358
Зарегистрирован: 27 сен 2012, 18:23
Темы: 208
Откуда: Украина, Одесса
Статус: Не в сети

Re: Найти разницу в выводе двух команд c помощью diff

Сообщение ZEN » 28 дек 2014, 19:19

тоже немного оффтопа добавлю) Аналог программе Kompare - Meld
бог создал труд и обезьяну
чтоб получился человек
а вот пингвина он не трогал
тот сразу вышел хорошо

Ответить

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость