Порівняйте дві папки, які містять багато файлів всередині вмісту


103

Майте дві папки з прибл. 150 файлів власності Java.

У сценарії оболонки, як порівняти обидві папки, щоб побачити, чи є який-небудь новий файл властивостей в будь-якій з них, і які відмінності між файлами властивостей.

Вихід повинен бути у форматі звіту.

Відповіді:


202

Щоб отримати підсумок нових / відсутніх файлів, а також які файли відрізняються:

diff -arq folder1 folder2

aрозглядає всі файли як текст, rрекурсивно шукає підкаталоги, qзвітує "на короткий час", лише коли файли відрізняються


@reko_t чи є спосіб запустити це черезJava
Kasun Siyambalapitiya

27

diff -r зробить це, повідомивши вам, чи були додані чи видалені будь-які файли, і що змінилось у файлах, які були змінені.


5

я використав

diff -rqyl folder1 folder2 --exclude=node_modules

в моїх додатках nodejs.



-1

Команда Diff в Unix використовується для пошуку відмінностей між файлами (усіх типів). Оскільки каталог також є типом файлу, відмінності між двома каталогами можна легко встановити, використовуючи команди diff. Для більшої кількості варіантів використовуйте man diff у вашій коробці unix.

 -b              Ignores trailing blanks  (spaces  and  tabs)
                 and   treats  other  strings  of  blanks  as
                 equivalent.

 -i              Ignores the case of  letters.  For  example,
                 `A' will compare equal to `a'.
 -t              Expands <TAB> characters  in  output  lines.
                 Normal or -c output adds character(s) to the
                 front of each line that may adversely affect
                 the indentation of the original source lines
                 and  make  the  output  lines  difficult  to
                 interpret.  This  option  will  preserve the
                 original source's indentation.

 -w              Ignores all blanks (<SPACE> and <TAB>  char-
                 acters)  and  treats  all  other  strings of
                 blanks   as   equivalent.    For    example,
                 `if ( a == b )'   will   compare   equal  to
                 `if(a==b)'.

і є ще багато.

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