Имеют две папки с ок. 150 файлов свойств java.
В оболочке script, как сравнить обе папки, чтобы увидеть, есть ли какой-либо новый файл свойств в любом из них и каковы различия между файлами свойств.
Выход должен быть в формате отчета.
Имеют две папки с ок. 150 файлов свойств java.
В оболочке script, как сравнить обе папки, чтобы увидеть, есть ли какой-либо новый файл свойств в любом из них и каковы различия между файлами свойств.
Выход должен быть в формате отчета.
Чтобы получить сводку по новым/отсутствующим файлам и по разным файлам:
diff -arq folder1 folder2
a
рассматривает все файлы как текст, r
рекурсивно ищет подкаталоги, q
сообщает "кратко", только если файлы различаются
diff -r
сделает это, сообщив вам обоим, если какие-либо файлы были добавлены или удалены, и что изменилось в файлах, которые были изменены.
Я использовал
diff -rqyl folder1 folder2 --exclude=node_modules
в моих приложениях nodejs.
Не могли бы вы использовать dircmp
?
Команда 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 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)'.
и их еще много.