Ordena os arquivos em um diretório por tempo de acesso, ignorando um subconjunto deles

3

De vez em quando eu baixo alguns arquivos para um diretório d . Durante o tempo lotes de arquivos foram baixados e eu tentei olhar para eles na ordem eles foram baixados do mais antigo para o mais recente.

Eu decidi que a ordem não importa com tanta precisão, mas os arquivos Eu acessei de outra maneira (por exemplo, abri um arquivo pdf que achei interessante) do que "tempo de download" pode alterar o ordem.

Eu usei o comando:

$ ls -rtlu

mas não era o que eu procurava porque os vídeos baixados pouco depois um após o outro foram separados por cerca de 100 outros arquivos Eu não mostrei nenhum interesse por eles recentemente. E todos eles têm o mesmo tempo de acesso na saída Feb 11 16:44 . O primeiro vídeo foi baixado em Feb 11 16:28 e o segundo foi baixado em Feb 11 16:45 .

Posso corrigir a saída para listar os arquivos de acordo com o tempo de acesso mas deixar de fora (ou me livrar) dos arquivos com os quais não trabalho?

por exemplo. descobrir o que os acessou (acho que poderia ser o aplicativo de auditoria que instalei recentemente)

    
por xralf 14.02.2017 / 01:35

1 resposta

2

Talvez ls -rtlc faça o que você deseja. É ordenado pelo tempo de alteração do inode (ctime). O tempo de troca de inode muda sempre que alguma coisa sobre o arquivo muda, exceto pelo seu tempo de acesso, ou seja, fazer qualquer outra coisa além de ler altera o tempo (criando, escrevendo, movendo, alterando atributos, etc.). Portanto, contanto que você não tenha movido os arquivos ou alterado suas permissões, o ctime ainda deve ser o tempo de download.

Se o tempo de download não for o que você quer, tenho medo de que você esteja sem sorte. Qual processo acessado em um arquivo não é registrado. O tempo de acesso do arquivo é atualizado em cada leitura (ou em algumas leituras, no sistema Linux moderno, sacrificando a conveniência pelo desempenho), não importa qual aplicativo lê o arquivo. Não há distinção entre ler com um leitor de PDF e ler com um aplicativo de auditoria ou indexação.

Se você quiser saber quais arquivos visualizou recentemente, poderá verificar se o próprio visualizador de arquivos mantém um histórico do arquivo que foi aberto. Muitos programas de GUI mantêm uma lista dos arquivos abertos mais recentemente, mas eles geralmente não oferecem um fácil acesso programático.

Se você chamou o visualizador da linha de comando, tente o histórico do shell. Dependendo de como você configurou o seu shell, seu histórico pode ou não estar completo e pode ou não ter o registro de data e hora.

    
por 15.02.2017 / 01:40