Skip to content

Latest commit

 

History

History
38 lines (29 loc) · 1 KB

create-a-filename-with-the-current-date.md

File metadata and controls

38 lines (29 loc) · 1 KB

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:

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:

$ 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:

$ touch $(date +%Y%m%d_%H%M%S)-migration.sql
# => 20250402_092442-migration.sql