我有一个创建 mysql 备份的脚本,文件最终被调用。
DB_name-M_D_Y.gz
所以例如stackoverflow_users-04_10_2013.gz
现在我事先不知道文件的名称,只知道模式。
我需要做的是调整脚本,在它创建新备份之前,检查任何文件中的日期是否早于 7 天,如果是,则对这些进行其他操作。
我知道如何做其他事情,但是首先获取文件列表是困难的。
我不能只使用修改后的日期,因为文件会被其他脚本触及,因此需要从文件名中读取日期。
那么,如何获取文件列表?
为了回复评论,假设这个虚拟数据
当前日期:2013 年 4 月10日
database zero-03_31_2013.gz #Older | Notice this one has spaces
database_one-04_01_2013.gz #Older
database_two-04_02_2013.gz #Older
database_three-04_03_2013.gz #Newer | Actually 7 days, but we want OLDER than!
database_four-04_04_2013.gz #Newer
database_five-04_05_2013.gz #Newer
dater.sh #Does not have the .gz extension | Not deleted
重击版本
matthew@play:~/test$ bash --version
GNU bash, version 4.2.37(1)-release (x86_64-pc-linux-gnu)
Copyright (C) 2011 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software; you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.