bash: навіщо використовувати прапор "трактувати всі файли як текст" за допомогою команди diff?


0

Я бачу кілька прикладів при використанні команди diff, особливо використовуючи її рекурсивно для перевірки цілих каталогів, щоб використовувати "diff -ar foo / foo2 /".

Якщо я перевіряю купу змішаних файлів (деякі тексти, деякі двійкові), то, здається, йде проти зерна, щоб усі файли розглядати як текст, хоча це працює!

Чи справді корисно використовувати -a під час перевірки каталогів, що містять двійкові файли? Якщо так, хтось може пояснити, чому?

Відповіді:


0

Насправді залежить від Вашого випадку використання. Вихід "бінарні файли відрізняються" зазвичай корисніший, ніж бачити точну різницю, але іноді ви хочете, щоб точна, точна різниця між двома бінарними файлами; а іноді, ви хочете обійти евристику, яка вирішує, чи файл є двійковим чи ні (файл з текстом у якомусь невідомому кодуванні може викликати евристику "є бінарною", коли він не повинен, наприклад).


Моя основна причина запитання полягала в тому, щоб побачити, чи є ймовірність або пропустити різницю потенціалів, або створити помилковий позитив для відмінностей при обробці бінарних файлів. Я ціную цілісність даних за кількістю поданої вихідної інформації.
bitofagoob

Наскільки я розумію, параметр суворо контролює, як повідомляються про різниці, а не про те, як вони виявляються. У багатьох сценаріях більш економічно замінити бінарний файл на інший, а не повідомляти про їх різницю, тоді як протилежні тенденції стосуються різних версій одних і тих же текстових даних.
трійка
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.