Der Linux-Befehl coreutils ls zeigt bei Verwendung mit der Option „-l“ Zeitstempel einschließlich Stunden und Minuten für aktuelle Dateien an und zeigt stattdessen das Jahr für Dateien an, die älter als sechs Monate und neuer als jetzt sind. Ich möchte dieses Verhalten für alte und aktuelle Dateien beibehalten und möchte aktuellen Dateien Sekunden und auch Zehntelsekunden hinzufügen.
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
Antwort1
Hier die Zeilen aus der Infoseite von 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"