Comando shell do OS X (Unix): possível obter a última data de abertura do arquivo?

3

quando você usa o seguinte comando

find /Users/someUser/someFolder/* -type f -mtime +90

você obterá todos os arquivos com uma data de modificação maior que 90 dias. Se você abrir, no entanto, as propriedades do arquivo no Finder no OS X, por exemplo, há também uma data de "Última abertura". Existe a possibilidade de obter todos os arquivos com uma data de última abertura maior algum treshold como o exemplo acima ?? Infelizmente não há "-tempo":)

Também no Automator você não tem filtro para o último tempo de abertura, mas apenas para tempo modificado e tempo criado ...

Muito obrigado

    
por Juri 18.09.2009 / 16:29

1 resposta

6

O parâmetro atime define o último tempo de acesso . Parece que você quer isso? Mas isso aparentemente não é o mesmo que a data que você usa no Finder.

Veja ls -lu para a data atime usa.

O Mac OS X também usa os "metadados HFS" (ou: "Informações do localizador") para armazenar datas. Por exemplo: o Unix não armazena datas de criação de arquivos. O cdate no Unix é realmente a data de alteração (incluindo, por exemplo, alterações nas permissões de acesso, por isso cdate obtém um novo valor em ocasiões ligeiramente diferentes da data de modificação para mdate ). Usando esses metadados, o Mac OS X ainda pode manter os detalhes.

Existem várias opções para mostrar (algumas) essas datas, como:

stat file.txt
GetFileInfo file.txt
mdls file.txt

Usando mdfind , é possível procurar metadados específicos. Mas usa o índice do Spotlight , então acho que talvez não encontre tudo.

Como encontrar arquivos excluídos dos backups do Time Machine:

sudo mdfind "com_apple_backup_excludeItem = 'com.apple.backupd'"

Para pesquisar com base na data de criação, use kMDItemFSCreationDate . Para a última data de abertura: kMDItemLastUsedDate . Mas observe que os arquivos que foram criados através de certos comandos do Terminal podem não ter esse conjunto de metadados:

echo "Hello world" > ~/Desktop/hello-world.txt
touch ~/Desktop/will-not-be-found.txt
mdfind -onlyin ~/Desktop 'kMDItemFSCreationDate >= $time.this_week'

Após abrir "will-not-be-found.txt" no Text Edit, você verá o arquivo depois de tudo.

Veja também o Sintaxe de consulta do Spotlight .

    
por 18.09.2009 / 16:35