Sem o out GNU/BSD find
TZ=ZZZ0 touch -t "$(TZ=ZZZ0:30 date +%Y%m%d%H%M.%S)" /reference/file
e, em seguida, find . -newer /reference/file
solução dada por Stéphane Chazelas
Como posso encontrar o arquivo de 30 minutos em /bin/ksh
?
No Linux, não há controle do tempo de criação de um arquivo. Você só pode acessar:
mtime
, atime
, ctime
. Se você deseja procurar arquivos com um teste com base nesses horários, find
( man find
) pode ajudá-lo.
Você usaria dessa maneira para encontrar um arquivo acessado exatamente há 30 minutos em seu diretório atual e em seus subdiretórios:
find -amin 30
Normalmente, você vai querer usar um intervalo, pois pode ser difícil dar um número exato de minutos:
find -amin +25 -amin -35
Isso localizará arquivos acessados há mais de 25, mas menos de 35 minutos atrás.
E, se estiver interessado apenas no tempo de modificação e não no tempo de acesso (ou seja, leitura), substitua -amin
por -mmin
.
Você pode usar mtime
para fazer isso:
find . -mmin 30 #exactly 30 minutes old
Tags find