When naming files, I love including the date with the format YYYYMMDD_HHMM. Take today, August 27, 2021, 1:52pm. That would look like 20210827_1352.
I use this format soooo much, that I finally wrote an Applescript that automatically puts that date on my clipboard in that exact format. I no longe have to type it all out.
The script is stored as an app in my dock. Whenever I need the date, I just click on the app, and BOOM. I have the date on my clipboard. It’s ready to be pasted wherever.
If you would like to use this app, here’s how to create it.
1. Open the Script Editor app
This can be found at: /Applications/Utilities/Script Editor
2. Create a new document in Script Editor
3. Paste in the following code:
set CurrentDateTime to (do shell script "date +\"%Y%m%d_%H%M\" | awk '{$1=$1;print}'")
set the clipboard to CurrentDateTime
It will look like this:

4. Export it as an app.
Go to File > Export…
Name your app whatever you like. I called mine “Copy date time app”
5. Drag that app over to your dock.
How to use the “Copy date time app”
1. Just click on the app in your dock.
The current date/time will automatically be copied to your clipboard.
2. Paste the date/time into where ever you want it.
How to customize this app
If you’d like to change the format of the text, just change the text between the quotes: “%Y%m%d_%H%M\“
- %Y = 2021 (year)
- %m = 08 (month with leading zero)
- %d = 27 (if today was the first, it would use a leading zero in 01)
- _ = (separator. an underscore (you could also use a dash, or if you don’t want any separator, just delete this)
- %H = 13 (hour using 24 hour clock)
- %M = 52 (minute)
Full table of the date time formats
%FORMAT String | Description |
---|---|
%% | a literal % |
%a | locale’s abbreviated weekday name (e.g., Sun) |
%A | locale’s full weekday name (e.g., Sunday) |
%b | locale’s abbreviated month name (e.g., Jan) |
%B | locale’s full month name (e.g., January) |
%c | locale’s date and time (e.g., Thu Mar 3 23:05:25 2005) |
%C | century; like %Y, except omit last two digits (e.g., 21) |
%d | day of month (e.g, 01) |
%D | date; same as %m/%d/%y |
%e | day of month, space padded; same as %_d |
%F | full date; same as %Y-%m-%d |
%g | last two digits of year of ISO week number (see %G) |
%G | year of ISO week number (see %V); normally useful only with %V |
%h | same as %b |
%H | hour (00..23) |
%I | hour (01..12) |
%j | day of year (001..366) |
%k | hour ( 0..23) |
%l | hour ( 1..12) |
%m | month (01..12) |
%M | minute (00..59) |
%n | a newline |
%N | nanoseconds (000000000..999999999) |
%p | locale’s equivalent of either AM or PM; blank if not known |
%P | like %p, but lower case |
%r | locale’s 12-hour clock time (e.g., 11:11:04 PM) |
%R | 24-hour hour and minute; same as %H:%M |
%s | seconds since 1970-01-01 00:00:00 UTC |
%S | second (00..60) |
%t | a tab |
%T | time; same as %H:%M:%S |
%u | day of week (1..7); 1 is Monday |
%U | week number of year, with Sunday as first day of week (00..53) |
%V | ISO week number, with Monday as first day of week (01..53) |
%w | day of week (0..6); 0 is Sunday |
%W | week number of year, with Monday as first day of week (00..53) |
%x | locale’s date representation (e.g., 12/31/99) |
%X | locale’s time representation (e.g., 23:13:48) |
%y | last two digits of year (00..99) |
%Y | year |
%z | +hhmm numeric timezone (e.g., -0400) |
%:z | +hh:mm numeric timezone (e.g., -04:00) |
%::z | +hh:mm:ss numeric time zone (e.g., -04:00:00) |
%:::z | numeric time zone with : to necessary precision (e.g., -04, +05:30) |
%Z | alphabetic time zone abbreviation (e.g., EDT) |
I LOVE this shortcut, thank you so much!!
I am trying to set up a keyboard shortcut to run this application automatically whenever I press a keystroke (Cmd + D, for example), but my Mac desktop computer doesn’t like it when I try to do this shortcut on another application (like Microsoft Edge). Any suggestions? For now, docking the app works well – thanks for the suggestion. Thank god somebody else smarter than me had the same idea.