Filtra o arquivo .txt na ordem decrescente da data criada

0

Eu criei um arquivo .txt , mas agora esqueci onde salvei e também o nome do arquivo. Então, minha pergunta é: existe algum método para filtrar .txt arquivos em ordem decrescente de data de criação? Atualmente estou usando o Ubuntu 12.04 em 32 bits.

    
por nKandel 26.07.2013 / 08:01

3 respostas

1

Expandindo o comentário de @soulsource, você precisa usar o find para comandar o uso mais básico que você poderia usar é encontrar todos os arquivos que terminam em .txt em sua máquina, o seguinte comando irá descer embora o sistema de arquivos iniciando no diretório raiz:

find / -type f -iname '*.txt' 

Agora, se você souber que salvou o arquivo em um diretório específico, por exemplo, seu diretório pessoal, mas esqueça o subdiretório que sempre pode acelerar o processo, alterando o caminho:

find ~/ -type f -iname '*.txt'

Agora, você só precisa canalizar, | , os arquivos resultantes para ls para encomendá-los por data

find ~/ -type f -iname '*.txt' | xargs ls -td1

Se você estiver recebendo um grande número de arquivos de volta, sempre é possível limitar o número de respostas ao direcioná-lo novamente para cabeça . Por exemplo, se você estiver interessado apenas nos 10 resultados mais recentes, use:

find ~/ -type f -iname '*.txt' | xargs ls -td1 | head -n10

Uma coisa a ser observada sobre find é que, por padrão, ele não segue links simbólicos, se você tiver alguns links simbólicos em seu diretório inicial e quiser ver esses também, é necessário usar a opção -follow encontrar.

find ~/ -type f -iname '*.txt' -follow | xargs ls -td1 | head -n10
    
por AJefferiss 26.07.2013 / 08:33
1

O comando "Localizar" pode filtrar por mtime, por exemplo

find path/to/some/directory -type f -name *.txt -mtime 5

Isso exibirá todos os arquivos no diretório path / to / some / que foram modificados nas últimas 5 * 24 horas. Eles não serão classificados por data de criação, no entanto - supondo que você não tenha modificado muitos arquivos de texto recentemente - com um filtro mtime suficiente, a lista de arquivos retornados deve ser bem pequena. Em vez de ordenar por data, este comando irá apenas mostrar arquivos que foram modificados recentemente ...

Você provavelmente poderia combinar isso com um pipe em xargs ls, como AJefferiss descreve para adicionar o tipo, se necessário.

    
por balleyne 26.07.2013 / 08:49
1

Você pode encontrar *.txt arquivos e classificá-los por data de modificação usando o seguinte comando no terminal terminal :

find /path/to/search -type f -iname '*.txt' -printf "%-.22T+ %Tx %.8TX %p\n" | sort | awk '{print $2 "\t" $3 "\t" $4}'

ou:

cd /path/to/search
find . -type f -iname '*.txt' -printf "%-.22T+ %Tx %.8TX %p\n" | sort | awk '{print $2 "\t" $3 "\t" $4}'

Nos últimos 10 arquivos *.txt modificados, use:

find . -type f -iname '*.txt' -printf "%-.22T+ %Tx %.8TX %p\n" | sort | awk '{print $2 "\t" $3 "\t" $4}' | tail
    
por Radu Rădeanu 26.07.2013 / 09:01