Listar las carpetas principales que contienen carpetas y archivos no modificados desde una fecha específica

0

Quiero enumerar las carpetas principales en un directorio en el que todas sus subcarpetas y archivos tengan una fecha modificada anterior a una fecha específica. ¿Algún consejo?

He intentado esto: find . -type d -newermt '7/15/09' de esta pregunta pero devuelve subcarpetas y archivos. Quiero devolver solo la carpeta principal.

Por ejemplo, si estoy en el directorio correcto y tiene 100 carpetas principales llamadas folder1 ... folder100 entonces folder1 tiene subcarpetas 1..10 y 10 archivos y todas estas subcarpetas y archivos no se han modificado para Luego de 6 meses, quiero que la carpeta 1 aparezca en el resultado, no en las subcarpetas y los archivos.

    
pregunta Tak 05.11.2018 - 12:35

1 respuesta

1
cd <to directory containting the main folders>
for d in */; do
    if [[ $(find "$d" -mtime -26w | fgrep -v .. | wc -l) -eq 0 ]]; then
        echo "$d"
    fi
done

debería funcionar, con la advertencia habitual sobre los nombres de archivos / directorios que contienen nuevas líneas, etc.

mtime compara la marca de tiempo de modificación del archivo con "ahora", -26w significa "menos de 26 semanas" (que es aproximadamente 6 meses).

    
respondido por el nohillside 05.11.2018 - 15:22

Lea otras preguntas en las etiquetas