Como posso usar find
para selecionar arquivos que foram gravados e não modificados no último minuto?
Sei que posso fazer o contrário, encontrar arquivos modificados nos últimos 60 segundos com -mtime -60s
, mas quero os que não foram modificados nos últimos 60 segundos.
Eu uso o Linux e recebo esse erro se eu usar segundos:
find ??/ -mtime +60s -name blah.tsv
find: invalid argument `+60s' to `-mtime'
+60
não é o oposto de-60
, pela mesma razão menor que não é o oposto de maior que : Ambos excluem o valor exato com o qual se comparam. Mas sua pergunta não indica exatamente qual comportamento você deseja.Exemplo
fonte
osx
.O segundo
-
no-mtime -60s
é não um delimitador de opção.-mtime
é uma opção e é seguido por um argumento de opção . O argumento de opção é-60s
, e o elemento-
faz parte do próprio argumento de opção, não um delimitador de opção. Significa "menos de 60 segundos". Argumentos de opção60s
e+60s
significam "igual a 60 segundos" e "maior que 60 segundos", respectivamente.O manual do Apple MacOS e o manual do FreeBSD mencionam os prefixos
+
e-
em exatamente um lugar e esquecem de explicar em qualquer lugar o que são. Isto é o que eles são.(O manual GNU Info para GNU
find
tem a mesma omissão, curiosamente. No entanto,find
a sintaxe do GNU por vezes é um pouco diferente dafind
sintaxe BSD e MacOS .)Leitura adicional
find
Página de manual do MacOS 10 . Biblioteca do desenvolvedor do MacOS 10.find
(1) . 17/03/2010. Manual de Comandos Gerais do FreeBSD. Projeto FreeBSD.fonte
atime
formato da hora, mas isso também não explica os prefixos . É uma seção separada que não é referenciada.Você deve poder usar
fonte
find . !( -mtime -60s )
Nos sistemas Unix, o tempo costumava ser seguido de um +/- seguido de um número seguido de unidades de tempo. [+ -] nn [dms]
O Linux usa mtime por dias, mmin por minutos, mas não parece haver uma opção de segundos e não usa um especificador de unidades de tempo. O + ou - ainda se refere a maior ou menor que o tempo, em vez de ser um argumento de opção, como mencionado acima.
Você pode usar -mmin 1, mas /unix/238738/find-files-newer-than-15-seconds-but-older-than-2-seconds discute como manipular segundos em geral .
fonte