【发布时间】:2016-12-19 12:46:15
【问题描述】:
我有一组带时间戳的文件,如下所示:
./mysql_foo_bar_hostname_table1_mysql_dump_20160927112627.dmp
./mysql_foo_bar_hostname_table2_mysql_dump_20160927121555.dmp
./mysql_foo_bar_hostname_table3_mysql_dump_20160927121703.dmp
./mysql_foo_bar_hostname_table4_mysql_dump_20160927112718.dmp
./mysql_foo_baz_hostname_table5_mysql_dump_20160919122659.dmp
./mysql_foo_bar_hostname_table6_mysql_dump_20160927110851.dmp
./mysql_foo_bar_hostname_table7_mysql_dump_20160927133419.dmp
./mysql_foo_bar_hostname_table6_mysql_dump_20160927100456.dmp
./mysql_foo_bar_hostname_table6_mysql_dump_20160927113037.dmp
./mysql_foo_bar_hostname_table6_mysql_dump_20160927102752.dmp
./mysql_foo_bar_hostname_table6_mysql_dump_20160927095924.dmp
./mysql_foo_baz_hostname_table8_mysql_dump_20160919140536.dmp
./mysql_foo_bar_hostname_table9_mysql_dump_20160927100730.dmp
我想保留具有相同“前缀”(即“_<timestamp>.dmp”之前的位(前缀是时间戳之前的所有内容)的所有文件中的最新文件。
例如,在上面的列表中,我想保留mysql_foo_bar_hostname_table6_mysql_dump_20160927113037.dmp,所有其他的都有唯一的“前缀”,所以我也想保留它们。我通常在 bash 中工作,但如果有更有效的方法,我会很高兴知道。提前感谢您的任何帮助。
【问题讨论】:
-
在
_.dmp前缀不同之前,表名因文件而异?您想要每个表类型的最新信息或总体逻辑是什么? -
您预期的文件不是最新的,以下文件比您指出的文件旧
./mysql_foo_bar_hostname_table7_mysql_dump_20160927133419.dmp ./mysql_foo_bar_hostname_table3_mysql_dump_20160927121703.dmp ./mysql_foo_bar_hostname_table2_mysql_dump_20160927121555.dmp -
我已经编辑了我原来的问题。 @Inian,它基本上是每张桌子最新的。 Ed Morton,我的错误格式破坏了我给出的示例。