In my bash script on mac (snow leopard) I have a path and filename, and I need to get the modified date/time of that file. I found I could do:stat -f "%m" $MYFILE
However, that returns what I assume is epoch date/time. I need the date/time formatted: YYYYMMDDThhmmss
. I've found all kinds of options (like date
) that apparently depend on GNU, which on my mac I don't have.
What's the standard way to get a file's date/time modified in a user-specified format on mac (BSD?) bash. Or at least, a date/time formatting function that I can pass the result of my stat
call above to.
To change the Modified timestamp to the current date and time, type "touch -m" in Terminal, followed by one space. Then drag the file from Finder into Terminal and press "Enter." Enter a space after the time and drag the file into the Terminal window. Press "Enter" to make the change.
Answer: A: You can get the creation date & the last modified date in Finder using Get Info or selecting the file in column view or list view.
The syntax is pretty simple; just run the stat command followed by the file's name whose last modification date you want to know, as shown in the example below. As you can see, the output shows more information than previous commands.
Bash Date format YYYY-MM-DD To format date in YYYY-MM-DD format, use the command date +%F or printf "%(%F)T\n" $EPOCHSECONDS . The %F option is an alias for %Y-%m-%d . This format is the ISO 8601 format.
It's actually pretty simple, but different enough from GNU date
that it's nowhere near obvious:
date -r $TIMESTAMP +%Y%m%dT%H%M%S
To get stat
to do the formatting:
stat -f "%Sm" -t "%Y%m%dT%H%M%S" FILE
# how-to list all the files and dir in a dir sorted by their
# modified time in the different shells
# usually mac os / Unix / FreeBSD stat
stat -f "%Sm %N" -t "%Y-%m-%d %H:%M:%S" ~/opt/comp/proj/*|sort
# STDOUT output:
# 2018-03-27 15:41:13 ~/opt/comp/proj/foo
# 2018-03-28 14:04:11 ~/opt/comp/proj/bar
# GNU Utils ( usually on Linux ) stat
# STDOUT output:
stat -c "%y %n" ~/opt/comp/proj/*|sort
# 2018-03-29 09:15:18.297435000 +0300 ~/opt/comp/proj/bar
# 2018-03-29 09:15:18.297435000 +0300 ~/opt/comp/proj/foo
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With