No lo use ls
, este es un trabajo para stat
:
stat -c '%y' filename
-c
nos permite obtener resultados específicos, aquí %y
obtendremos la última hora de modificación del archivo en formato legible para humanos. Para obtener tiempo en segundos desde el uso de Epoch %Y
:
stat -c '%Y' filename
Si también desea el nombre del archivo, use %n
:
stat -c '%y : %n' filename
stat -c '%Y : %n' filename
Establezca los especificadores de formato para satisfacer sus necesidades. Compruebe man stat
.
Ejemplo:
% stat -c '%y' foobar.txt
2016-07-26 12:15:16.897284828 +0600
% stat -c '%Y' foobar.txt
1469513716
% stat -c '%y : %n' foobar.txt
2016-07-26 12:15:16.897284828 +0600 : foobar.txt
% stat -c '%Y : %n' foobar.txt
1469513716 : foobar.txt
Si desea un resultado similar Tue Jul 26 15:20:59 BST 2016
, use el tiempo de Epoch como entrada para date
:
% date -d "@$(stat -c '%Y' a.out)" '+%a %b %d %T %Z %Y'
Tue Jul 26 12:15:21 BDT 2016
% date -d "@$(stat -c '%Y' a.out)" '+%c'
Tue 26 Jul 2016 12:15:21 PM BDT
% date -d "@$(stat -c '%Y' a.out)"
Tue Jul 26 12:15:21 BDT 2016
Verifique date
los especificadores de formato para satisfacer sus necesidades. Mira man date
también
ls
se implementa de manera inconsistente en todos los sistemas y, por lo tanto, nunca debe usarse para ningún tipo de automatización. En su lugar, use comandos comostat
yfind
cuando escriba scripts.