Porównaj dwa foldery, które zawierają wiele plików


103

Miej dwa foldery z ok. 150 plików właściwości Java.

W skrypcie powłoki: jak porównać oba foldery, aby sprawdzić, czy w którymkolwiek z nich jest nowy plik właściwości i jakie są różnice między plikami właściwości.

Dane wyjściowe powinny być w formacie raportu.

Odpowiedzi:


202

Aby uzyskać podsumowanie nowych / brakujących plików i które pliki się różnią:

diff -arq folder1 folder2

atraktuje wszystkie pliki jako tekst, rrekurencyjnie przeszukiwane podkatalogi, qraportuje „na krótko”, tylko gdy pliki się różnią


@reko_t Czy jest jakikolwiek sposób, aby to uruchomićJava
Kasun Siyambalapitiya

27

diff -r zrobi to, informując was obojga, czy jakieś pliki zostały dodane lub usunięte oraz co się zmieniło w plikach, które zostały zmodyfikowane.


5

użyłem

diff -rqyl folder1 folder2 --exclude=node_modules

w moich aplikacjach nodejs.



-1

Polecenie Diff w systemie Unix służy do znajdowania różnic między plikami (wszystkie typy). Ponieważ katalog jest również typem pliku, różnice między dwoma katalogami można łatwo znaleźć za pomocą poleceń diff. Aby uzyskać więcej opcji, użyj man diff na swoim uniksowym pudełku.

 -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)'.

i jest ich o wiele więcej.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.