aboutsummaryrefslogtreecommitdiff
path: root/_tils/2020-08-12-simple-filename-timestamp.md
diff options
context:
space:
mode:
Diffstat (limited to '_tils/2020-08-12-simple-filename-timestamp.md')
-rw-r--r--_tils/2020-08-12-simple-filename-timestamp.md33
1 files changed, 33 insertions, 0 deletions
diff --git a/_tils/2020-08-12-simple-filename-timestamp.md b/_tils/2020-08-12-simple-filename-timestamp.md
new file mode 100644
index 0000000..a02c70b
--- /dev/null
+++ b/_tils/2020-08-12-simple-filename-timestamp.md
@@ -0,0 +1,33 @@
+---
+title: Simple filename timestamp
+date: 2020-08-12
+layout: post
+lang: en
+ref: simple-filename-timestamp
+---
+When writing Jekyll posts or creating log files with dates on them, I usually
+struggle with finding a direct way of accomplishing that. There's a simple
+solution: `date -I`.
+
+```shell
+./my-program.sh > my-program.$(date -I).log
+cp post-template.md _posts/$(date -I)-post-slug.md
+```
+
+Using this built-in GNU/Linux tool allows you to `touch $(date -I).md` to readily
+create a `2020-08-12.md` file.
+
+I always had to read `man date` or search the web over and over, and after doing
+this repeatedly it became clear that both `date -I` and `date -Is` (`s` here
+stands for seconds) are the thing that I'm looking for 95% of the time:
+
+```shell
+# inside my-program.sh
+echo "Program started at $(date -Is)"
+# output is:
+# Program started at 2020-08-12T09:04:58-03:00
+```
+
+Both date formats are hierarchical, having the bigger time intervals to the
+left. This means that you can easily sort them (and even tab-complete them) with
+no extra effort or tool required.