Pokaż zarówno ctime, jak i atime w wynikach ls

19

Czy mogę uzyskać zarówno ctime, jak i atime w wynikach ls? Wydaje się, że mogę przekazać tylko jeden argument --time=ctimelub --time=atimeargument (drugi jest ignorowany). Czy jest jakiś inny sposób?

ibz
źródło

Odpowiedzi:

13

Mógłbyś biec stat -c '%x %z' filename.txt

weeheavy
źródło
Pamiętaj, że stat -c '%w %x %y %z' filename.txtdaje to tworzenie, dostęp, modyfikację danych, zmianę statusu. W formacie czytelnym dla człowieka.
południk
16

Jeśli analizujesz tylko wartości ls, możesz statzamiast tego użyć :

# stat -c% x,% z,% n *
2011-01-11 06: 09: 04.000000000 -0500,2011-01-11 02: 43: 52.000000000 -0500, sqlupdate.sh
2011-01-11 06: 09: 04.000000000 -0500,2011-01-12 02: 43: 55.000000000 -0500, file.tar.gz
2011-01-11 06: 09: 04.000000000 -0500,2011-01-11 02: 43: 52.000000000 -0500, mysql_password.txt
2011-01-17 02: 43: 49.000000000 -0500,2011-01-12 13: 40: 48.000000000 -0500, public_html

Gdzie:

 % x czas ostatniego dostępu
 % z Czas ostatniej zmiany
 % n Nazwa pliku
John T.
źródło
Dla pewności rozumiem tutaj odpowiedzi. Możliwe jest wyświetlanie za pomocą ls dowolnego czasu dostępu, modyfikacji i zmiany, ale nie więcej niż jednego na raz. Ponieważ jest to zarówno bardzo zaskakujące, jak i bardzo denerwujące.
Mads Skjern
5

dzięki findczemu jesteś bardzo blisko tego, co ls -lzapewnia:

# find . -maxdepth 1 \
     -printf "%M %u %g %s\t%Ab %Ad %AH:%AM\t%Cb %Cd %CH:%CM\t%P\n"

masz dostęp do ctime (% C), atime (% A) i czasu modyfikacji (% T). czytaj, man findaby znaleźć więcej informacji.

akira
źródło