Unix: ordene el contenido de dos carpetas y luego compare usando el comando diff

Respuestas:

1

Usted podría usar diff con proceso de sustitución :

diff <(ls -a dir1/) <(ls -a dir2/)
  • <(...) crea un descriptor de archivo cuya ruta se agrega como argumento a diff.
  • Cuando no se da ninguna opción de clasificación, ls ordena la salida alfabéticamente
  • Los dos ls -las salidas se dan a diff para comparacion.

Mis carpetas de ejemplo se ven así:

.
├── dir1
│   ├── file1
│   ├── file2
│   └── file3
└── dir2
    ├── file2
    ├── file3
    └── file4

La salida en este caso es:

$ diff <(ls -a dir1/) <(ls -a dir2/)
3d2
< file1
5a5
> file4
chaos
fuente