Não tenho certeza de uma boa maneira de fazer isso diretamente usando apenas find ou similar, mas você pode usar find e grep :
find -printf '%Tw:%h/%ffind -name '*.html' -type f -printf '%Tw:%h/%f$ ls -la
total 68
drwxr-xr-x 2 anthony anthony 4096 Mar 24 17:53 .
drwxrwxrwt 98 root root 61440 Mar 24 17:55 ..
-rw-r--r-- 1 anthony anthony 0 Mar 24 17:53 monday
-rw-r--r-- 1 anthony anthony 0 Mar 23 11:12 sunday
' | grep -z '^1:'
' | grep -z '^1:'
Como é find , você pode combinar outros sinalizadores:
1:./.
0:./sunday
1:./monday
para obter apenas os arquivos que terminam com .html .
Explicação
Aqui está o meu diretório de testes:
find -printf '%Tw:%h/%ffind -name '*.html' -type f -printf '%Tw:%h/%f$ ls -la
total 68
drwxr-xr-x 2 anthony anthony 4096 Mar 24 17:53 .
drwxrwxrwt 98 root root 61440 Mar 24 17:55 ..
-rw-r--r-- 1 anthony anthony 0 Mar 24 17:53 monday
-rw-r--r-- 1 anthony anthony 0 Mar 23 11:12 sunday
' | grep -z '^1:'
' | grep -z '^1:'
O argumento% p_de find usa uma string de formatação. Aqui,% T significa tempo da última modificação. O -printf significa o dia da semana, de 0 (domingo) a 6 (sábado). Você pode obter o nome com w (abreviado: Mon) ou a (completo: segunda-feira), mas esses são específicos de localidade. A fornece literal : . : é o caminho e o nome do arquivo. %h/%f null-separa as entradas (como -print0 faz).
Assim, imprimiremos algo como 1:./.<NULL>0:./sunday<NULL>1:./monday<NULL> , que, se você substituir o NULL por nova linha por legibilidade tr ' , é: grep -z '^1:'' '\n'
1:./.
0:./sunday
1:./monday
Então %code% procura itens que começam com 1 :, que é segunda-feira.