将日期预先添加到shell脚本中的文件名

时间:2010-08-04 12:05:05

标签: linux shell

我有以下shell脚本,想要更改文件名db_backup.sql,以便更改当前日期,例如yyyy-mm-dd-db_backup.sql

#!/bin/sh
mysqldump ... /_sql/db_backup.sql
gzip -f _sql/db_backup.sql

简单的问题,希望快速简单的答案!

2 个答案:

答案 0 :(得分:5)

您可以使用date命令执行所需操作:

#!/bin/sh
fspec=/_sql/$(date +%Y-%m-%d)-db_backup.sql
mysqldump ... ${fspec}
gzip -f ${fspec}

如果您使用的shell不支持$(),则可能需要使用反引号:

fspec=/_sql/`date +%Y-%m-%d`-db_backup.sql

答案 1 :(得分:0)

use POSIX qw(strftime);
my $file = sprintf("%s-db_backup.sql",  strftime "%Y-%m-%d", localtime);