Confronta due cartelle che hanno molti file all'interno del contenuto


103

Avere due cartelle con ca. 150 file di proprietà java.

In uno script di shell, come confrontare entrambe le cartelle per vedere se c'è un nuovo file di proprietà in una di esse e quali sono le differenze tra i file di proprietà.

L'output dovrebbe essere in un formato di report.

Risposte:


202

Per ottenere un riepilogo dei file nuovi / mancanti e quali file differiscono:

diff -arq folder1 folder2

atratta tutti i file come testo, rsottodirectory ricercate in modo ricorsivo, qsegnala "brevemente", solo quando i file differiscono


@reko_t c'è un modo per eseguire questo tramiteJava
Kasun Siyambalapitiya

27

diff -r lo farà, dicendoti se dei file sono stati aggiunti o eliminati e cosa è cambiato nei file che sono stati modificati.


5

ero solito

diff -rqyl folder1 folder2 --exclude=node_modules

nelle mie app nodejs.



-1

Il comando Diff in Unix viene utilizzato per trovare le differenze tra i file (tutti i tipi). Poiché anche la directory è un tipo di file, le differenze tra due directory possono essere facilmente individuate utilizzando i comandi diff. Per ulteriori opzioni usa man diff sulla tua scatola 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)'.

E ce ne sono molti altri.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.