When I do ls -l I get

-rw-------  1 nifle None  17K Jul 15 01:48 .bash_history
-rwxr-xr-x  1 nifle None 1.2K Feb  9  2010 .bash_profile*
-rwxr-xr-x  1 nifle None 3.7K Mar 22 10:03 .bashrc*
-rwxr-xr-x  1 nifle None 3.7K Feb  9  2010 .bashrc~*
drwxr-xr-x+ 1 nifle None    0 Mar  6 17:31 .cpan/
drwxr-xr-x+ 1 nifle None    0 Jan  3  2011 .emacs.d/

How can I get the date/time format to allways be YYYY-MM-DD HH:MM insted?

1 Answer 1


Assuming GNU ls, from info ls "Formatting file timestamps":

     List timestamps in style STYLE.  The STYLE should be one of the


      List ISO 8601 date and time in minutes, e.g., `2002-03-30
      23:45'.  These timestamps are shorter than `full-iso'
      timestamps, and are usually good enough for everyday work.
      This style is equivalent to `+%Y-%m-%d %H:%M'.


   You can specify the default value of the `--time-style' option with
the environment variable `TIME_STYLE'; if `TIME_STYLE' is not set the
default style is `locale'.

So put the following in your .bashrc or .bash_profile and you are all set:

export TIME_STYLE=long-iso
  • Added a little more info to your answer.
    – Nifle
    Jul 15, 2011 at 14:37
  • 1
    This apeared to be dangerous on servers with loads of custom scripts who depend on the output of "ls"... :-( ok, the scripts are wrong indeed.. but be aware of possible consequences
    – JDC
    Jul 22, 2016 at 7:42
  • 2

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.