2017-04-04 1 views
0

ich ein wenig verwirrt bin, änderte ich meine Zeit auf eine Datei mit dem Shell-Befehl:Warum schreibt die Shell nicht die gute Stunde und gibt mir das Jahr?

  • Touch -t = Touch -t 201.606.012.135 trial01

Aber nach dem ls -lt, bekam ich dieses:

-rw-r--r-- 1 CharleyD staff  87 1 jun 2016 trial01 
    drwxr-xr-x 15 CharleyD staff  510 3 apr 12:57 Hybrid_proj 

Warum schreibt die Shell nicht die Stunden wie das Verzeichnis "Hybrid_proj" für "trial01"? Die trial01-Datei hat die Stunde: 21:35, also ist sie nicht leer.

Tat suche ich dies in der Ausgabe zu erhalten:

-rw-r--r-- 1 CharleyD staff  87 1 jun 21:35 trial01 
drwxr-xr-x 15 CharleyD staff  510 3 apr 12:57 Hybrid_proj 

Wie kann ich das tun?

Thx viele Freunde, um meinen Weg zu erleuchten! ;)

Antwort

1

Wenn eine Datei nicht aus dem aktuellen Jahr stammt, zeigt ls standardmäßig das Jahr anstelle der Uhrzeit an. Die Zeit ist immer noch korrekt eingestellt, nur anders formatiert.

immer auf die Vollzeit, mit GNU ls, können Sie ls --time-style=long-iso -l:

$ ls --time-style=full-iso -l 
total 0 
-rw-r--r-- 1 user user 0 2017-04-04 13:20 newfile 
-rw-r--r-- 1 user user 0 2016-04-03 12:34 oldfile 

Mit BusyBox ls Sie -e verwenden können:

$ busybox ls -e 
total 0 
-rw-r--r-- 1 user user   0 Tue Apr 4 13:20:42 2017 newfile 
-rw-r--r-- 1 user user   0 Sun Apr 3 12:34:00 2016 oldfile 

Mit macOS ls, können Sie -lT:

$ ls -lT 
total 0 
-rw-r--r-- 1 user group 0 Apr 4 13:19:35 2017 myfile 
-rw-r--r-- 1 user group 0 Apr 3 12:34:00 2016 oldfile 

In jedem Fall erhalten Sie einen langen Zeitstempel mit demselben Format für ältere und neuere Dateien.

+0

Oooh! Deshalb ! Danke für Ihre Erklärung so hilfreich! – CharleyD

0

Verwenden Sie die Option -T, wenn Ihre ls dies unterstützt.

Verwandte Themen