Tengo una lista de archivos que quiero verificar si existen en mi sistema de archivos. Pensé en hacer esto usando findcomo en:
for f in $(cat file_list); do
find . -name $f > /dev/null || print $f
done
(usando zsh) pero eso no funciona ya que findparece salir 0si encuentra o no el archivo. Supongo que podría pasarlo por alguna otra prueba, que prueba para ver si findproduce algo (crudo pero efectivo sería reemplazarlo > /dev/nullcon |grep ''), pero esto se siente como usar un troll para atrapar una cabra (otras nacionalidades podrían decir algo sobre mazos y nueces )
¿Hay alguna manera de findobligarme a darme un valor de salida útil? ¿O al menos para obtener una lista de esos archivos que no se encontraron? (Me imagino que esto último es quizás más fácil por alguna astuta elección de conexiones lógicas, pero parece que siempre me atoro cuando trato de resolverlo).
Antecedentes / Motivación: Tengo una copia de seguridad "maestra" y quiero verificar que existan algunos archivos en mi máquina local en mi copia de seguridad maestra antes de eliminarlos (para crear un poco de espacio). Así que hice una lista de los archivos, los sshedité en la máquina maestra, y luego no pude encontrar la mejor manera de encontrar los archivos faltantes.
locateno muestra el estado actual del sistema de archivos, podría ser un día o incluso una semana de antigüedad. Eso es adecuado como base para probar las copias de seguridad.
locate.