mirror of
https://github.com/jbranchaud/til
synced 2026-01-03 23:28:02 +00:00
Add Create A Filename With The Current Date as a Unix TIL
This commit is contained in:
@@ -10,7 +10,7 @@ pairing with smart people at Hashrocket.
|
|||||||
|
|
||||||
For a steady stream of TILs, [sign up for my newsletter](https://crafty-builder-6996.ck.page/e169c61186).
|
For a steady stream of TILs, [sign up for my newsletter](https://crafty-builder-6996.ck.page/e169c61186).
|
||||||
|
|
||||||
_1633 TILs and counting..._
|
_1634 TILs and counting..._
|
||||||
|
|
||||||
See some of the other learning resources I work on:
|
See some of the other learning resources I work on:
|
||||||
- [Ruby Operator Lookup](https://www.visualmode.dev/ruby-operators)
|
- [Ruby Operator Lookup](https://www.visualmode.dev/ruby-operators)
|
||||||
@@ -1542,6 +1542,7 @@ If you've learned something here, support my efforts writing daily TILs by
|
|||||||
- [Count The Number Of ripgrep Pattern Matches](unix/count-the-number-of-ripgrep-pattern-matches.md)
|
- [Count The Number Of ripgrep Pattern Matches](unix/count-the-number-of-ripgrep-pattern-matches.md)
|
||||||
- [Count The Number Of Words On A Webpage](unix/count-the-number-of-words-on-a-webpage.md)
|
- [Count The Number Of Words On A Webpage](unix/count-the-number-of-words-on-a-webpage.md)
|
||||||
- [Create A File Descriptor with Process Substitution](unix/create-a-file-descriptor-with-process-substitution.md)
|
- [Create A File Descriptor with Process Substitution](unix/create-a-file-descriptor-with-process-substitution.md)
|
||||||
|
- [Create A Filename With The Current Date](unix/create-a-filename-with-the-current-date.md)
|
||||||
- [Create A Sequence Of Values With A Step](unix/create-a-sequence-of-values-with-a-step.md)
|
- [Create A Sequence Of Values With A Step](unix/create-a-sequence-of-values-with-a-step.md)
|
||||||
- [Curl With Cookies](unix/curl-with-cookies.md)
|
- [Curl With Cookies](unix/curl-with-cookies.md)
|
||||||
- [Curling For Headers](unix/curling-for-headers.md)
|
- [Curling For Headers](unix/curling-for-headers.md)
|
||||||
|
|||||||
38
unix/create-a-filename-with-the-current-date.md
Normal file
38
unix/create-a-filename-with-the-current-date.md
Normal file
@@ -0,0 +1,38 @@
|
|||||||
|
# Create A Filename With The Current Date
|
||||||
|
|
||||||
|
I was recently working on a script to pull a scrubbed database dump using the
|
||||||
|
`pg_dump` Postgres utility. Ultimately, the script does something like this to
|
||||||
|
dump a remote database to a local file:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
pg_dump \
|
||||||
|
-h host.region.rds.amazonaws.com \
|
||||||
|
-U db_username \
|
||||||
|
-d db_name \
|
||||||
|
-F c \
|
||||||
|
-f scrubbed-database-$(date +%Y-%m-%d).dump
|
||||||
|
```
|
||||||
|
|
||||||
|
Notice the last part of that command where we define the name of the dump file.
|
||||||
|
It has a `$(...)` that is used to run and interpolate a command as part of the
|
||||||
|
filename.
|
||||||
|
|
||||||
|
Here is that `date` command run on its own:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
$ date +%Y-%m-%d
|
||||||
|
2025-04-02
|
||||||
|
```
|
||||||
|
|
||||||
|
In the above command, that would mean if I were to run it today, I'd get
|
||||||
|
`scrubbed-database-2025-04-02.dump`.
|
||||||
|
|
||||||
|
This approach can be used with any command where you are producing a file that
|
||||||
|
you want to be dated or timestamped.
|
||||||
|
|
||||||
|
Here is another example that incorporates the time as well:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
$ touch $(date +%Y%m%d_%H%M%S)-migration.sql
|
||||||
|
# => 20250402_092442-migration.sql
|
||||||
|
```
|
||||||
Reference in New Issue
Block a user