linux ls mostra segundos apenas para arquivos recentes

linux ls mostra segundos apenas para arquivos recentes

O comando linux coreutils ls mostra ao usar a opção "-l" carimbos de data e hora, incluindo horas e minutos para arquivos recentes e mostra o ano para arquivos com mais de seis meses e mais recentes do que agora. Gostaria de manter esse comportamento em relação aos arquivos antigos e recentes e gostaria de adicionar segundos e também dezenas de segundos aos arquivos recentes.

ls -l /tmp/dir/ 
total 0
-rw-r--r-- 1 user1 users 0 janv.  1  2004 foo1   <==== keep this style for 
                                                       non-recent files

-rw-r--r-- 1 user1 users 0 juin  14 12:32 foo2   <==== add seconds for 
                                                       recent files

Responder1

Aqui estão as linhas da página de informações de ls:

$ info coreutils 'ls invocation'
...
If FORMAT contains two format strings separated by a newline,
the former is used for non-recent files and the latter for
recent files; if you want output columns to line up, you may
need to insert spaces in one of the two formats.
...
the following two `ls' invocations are equivalent:
     newline='
     '
     ls -l --time-style="+%b %e  %Y$newline%b %e %H:%M"
     ls -l --time-style="locale"

informação relacionada