Sim, "dados do arquivo modificado" ( mtime
) significa que o conteúdo foi modificado. Essa data pode ser alterada manualmente (por exemplo, com touch
).
Sim, "status do arquivo alterado" ( ctime
) significa que o conteúdo foi alterado ou os metadados do arquivo (permissão, proprietário etc.). Isso não pode ser alterado manualmente.
Exemplo:
$ date > foo
$ ls -l --full-time foo; ls -lc --full-time foo # Both times have changed
-rw-r--r-- 1 xhienne xhienne 29 2017-01-18 13:40:07.677161702 +0100 foo
-rw-r--r-- 1 xhienne xhienne 29 2017-01-18 13:40:07.677161702 +0100 foo
$ chmod o-r foo
$ ls -l --full-time foo; ls -lc --full-time foo # Only ctime has changed
-rw-r----- 1 xhienne xhienne 29 2017-01-18 13:40:07.677161702 +0100 foo
-rw-r----- 1 xhienne xhienne 29 2017-01-18 13:40:29.601161310 +0100 foo
$ date >> foo
$ ls -l --full-time foo; ls -lc --full-time foo # Again, both times have changed
-rw-r----- 1 xhienne xhienne 58 2017-01-18 13:40:51.297160921 +0100 foo
-rw-r----- 1 xhienne xhienne 58 2017-01-18 13:40:51.297160921 +0100 foo
Seu arquivo não foi encontrado porque os find
predicam -mtime 1
e -ctime 1
pesquisam um arquivo que foi modificado ontem (mais exatamente entre 24h e 48h atrás). Para um arquivo que é modificado hoje, use -mtime 0
ou -mtime -1
(mesmo para -ctime
).
Exemplo:
$ find -name foo -mtime 1 -ctime 1
$ find -name foo -mtime 0 -ctime 0
./foo
$ find -name foo -mtime -1 -ctime -1
./foo