2 votos

Compare dos estructuras de carpetas y archivos de lista que existen en ambos, pero que son diferentes

Tengo una carpeta de trabajo local que refleja parte de una web del servidor de carpetas públicas. Yo generalmente trabajo en la copia local y, a continuación, auto-cargar archivos en el servidor cuando el ahorro. El problema es que me he dado cuenta últimamente de que una gran cantidad de archivos en mis archivos locales parecen estar fuera de fecha, así que siempre que puedo guardar y cargar un archivo, estoy que podría sobrescribir la versión más reciente. Obviamente, esto es problemático, así que me gustaría obtener toda la fuera de la fecha de los archivos locales hasta la fecha.

La mejor manera que se me ocurre de hacer esto es descargar toda la carpeta pública como es y comparar cada archivo con mi copia local, de ir manualmente a través de archivos con las diferencias (por comparación de los mismos en el Código de Visual Studio). El servidor público de la carpeta tiene alrededor de 5 gb de cosas adicionales que no me necesita (o quiere) en mi carpeta de trabajo local, a pesar de que, por lo tanto tendría que filtrar las cosas no deseado en primer lugar.

En otras palabras, estoy buscando una manera de (interfaz gráfica de usuario o terminal) para hacer lo siguiente:

  • Dar dos directorios de alto nivel como entrada
  • Recorrer recursivamente a través de ambos directorios y seleccionar los archivos que existen en ambos (en la misma ubicación relativa)
  • Comparar cada conjunto de archivos encontrados y la lista de aquellos en los que los dos archivos son los no idénticos

Hay algunos razonablemente no complejos manera de hacerlo?

4voto

Usted puede utilizar diff para este después de la descarga de la carpeta pública:

diff -q -r working-folder public-folder

Se le dará la lista de archivos que son diferentes, omitir -q también mostrar una lista de las diferencias reales.

Para suprimir el listado de archivos disponibles sólo en public-folder puede filtrar fácilmente a ellos a través de grep:

diff -q -r working-folder public-folder | grep -v '^Only in public-folder'

(asegúrese de reemplazar el public-folder parte con el nombre real en ambas apariciones)

2voto

Douglas Puntos 10417

Mientras que yo soy un gran defensor de la utilización de herramientas integradas (+1 para nohillside la respuesta) en lugar de buscar el más cercano de la aplicación, de vez en cuando me lo encuentro realmente invaluable aplicaciones. En este caso, he encontrado una gráfica de fusión y diferenciación aplicación llamada Meld.

Meld es un visual diff y herramienta de combinación dirigido a los desarrolladores. Meld le ayuda a comparar los archivos, directorios, y la versión controlada de los proyectos. Se ofrece en dos y tres vías de comparación de archivos y directorios, y tiene soporte para muchos de los más populares sistemas de control de versiones.

Meld Screenshot

Meld es algo excesivo para lo que usted está buscando para hacer, pero no tanto que hace que el software engorrosas. La mejor parte es que es gratis (como en la cerveza).

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X