Как я могу остановить diff, когда один файл закончился?

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

Мне не нужно использовать diff, я мог бы использовать python для этого, есть ли простой способ сделать то же самое на python?

1 ответ

Посмотрите, работает ли это решение для вас:

dhruvpathak@dhruvpathak:~$ cat shortfile
this is a
short file
created
for example
dhruvpathak@dhruvpathak:~$ cat longfile
this is a
long file
created
for example.
but also contains
some extra text
which needs to be
ignored when
the small file 
ends.

dhruvpathak@dhruvpathak:~$ cat shortfile > /tmp/a && echo "*****ENDMARKER*****" >> /tmp/a && cat longfile > /tmp/b && diff /tmp/a /tmp/b | grep -B 100000 "*****ENDMARKER*****"
2c2
< short file
---
> long file
4,5c4,10
< for example
< *****ENDMARKER*****
Другие вопросы по тегам