Original:
Jan 23 2011 10:42 ALGO 2007.12.20.avi 26 de junho de 2009 ALGO 2009.06.25.avi 12 de fevereiro de 2010 ALGO 2010.02.11.avi Jan 29 2011 09:17 ALGO 2011.01.27.avi 11 de fevereiro de 2011 20:06 ALGO 2011.02.10.avi 27 de fevereiro de 2011 23:05 ALGO 2011.02.24.avi
Resultado:
27 de fevereiro de 2011 23:05 ALGO 2011.02.24.avi 11 de fevereiro de 2011 20:06 ALGO 2011.02.10.avi Jan 29 2011 09:17 ALGO 2011.01.27.avi Jan 23 2011 10:42 ALGO 2007.12.20.avi 12 de fevereiro de 2010 ALGO 2010.02.11.avi 26 de junho de 2009 ALGO 2009.06.25.avi
Eu gerei a lista acima (Original) com:
ls -A -lR | grep "^-" | sed "s/.\{43\}/&\n/" | grep -v "^-" | while read ONELINE; do if echo $ONELINE | cut -d " " -f3 | grep -o '[0-9][0-9]:[0-9][0-9]' > /dev/null 2>&1; then echo $ONELINE | sed "s/.\{7\}/&$(date +%Y) /"; else echo $ONELINE; fi; done
Como eu pude obter a saída onde o arquivo mais recente está no topo?
Respostas:
Na maioria dos escritórios,
ls
tem uma-t
opção. Naman
página da minha caixa Debian:Tente o seguinte comando:
$ ls -lt
fonte
É um arquivo de texto que você está tentando classificar ou está tentando exibir uma listagem de diretórios por data? Para o último, use o
-t
sinalizador parals
. Para o primeiro, veja em particular o-M
sinalizador para classificação GNU, que classifica por abreviaturas de nome com três letras no mês. O comando a seguir classifica pelas 3ª, 1ª, 2ª e 4ª colunas, tratando a segunda chave de classificação como um nome de mês.Considere sempre usar datas no estilo japonês / ISO, sempre na ordem AAAA-MM-DD-HH-MM-SS (ou seja, primeiro, a largura da coluna constante mais significativa). Dessa forma, a classificação por data é idêntica a uma classificação lexicográfica.
fonte
2018 5 26
funciona tão bem quanto2018 05 26
(desde que você não faça uma marcação que mescla espaços consecutivos ...), o que não funciona bem é2018 5 26
.Eu não tenho certeza se a funcionalidade estava no
ls
comando quando a pergunta original foi questionado, mas agora você pode usar a opção--full-time
.por exemplo,
classificará com o tempo mais antigo na parte inferior; ou se você usar:
então ele reverterá a ordem.
fonte
-t
opção responde a essa pergunta completamente;--full-time
não é realmente relevante.ls -t
também não fornece o modo e o proprietário dos arquivos, o nome do host e a versão do sistema operacional ou o preço do chá na China.ls -t
nem sequer exibe a data da modificação. Mas a pergunta não é sobre a exibição de informações de arquivos, é sobre a classificação de arquivos por data de modificação. Você não está contribuindo para a resposta da pergunta; você está adicionando informações suplementares importantes. Quando você obtiver 50 pontos de reputação , poderá postar esse tipo de informação como um comentário .recursivo (
R
) e pausa (|more
)fonte