String BASH-备份保留

String BASH-备份保留,string,bash,design-patterns,String,Bash,Design Patterns,我需要一些帮助,这-我有一个备份保留和组织脚本 我有一个满是备份的文件夹,模式为ReportsBackup-20140309-12-00 我需要的是: 1/删除所有文件,只保留04-00h中的文件 我是这样做的 removals =\`/bin/ls | grep -v -04-00\` rm /mnt/backupstorage/$removals 我怎样才能每年和每月隔离基于模式ReportsBackup-20140309-12-00的文件?措辞拙劣的问题。我假设您希望保留所有*-04-

我需要一些帮助,这-我有一个备份保留和组织脚本 我有一个满是备份的文件夹,模式为
ReportsBackup-20140309-12-00

我需要的是:

1/删除所有文件,只保留04-00h中的文件 我是这样做的

removals =\`/bin/ls | grep -v -04-00\` 
rm /mnt/backupstorage/$removals

我怎样才能每年和每月隔离基于模式
ReportsBackup-20140309-12-00
的文件?

措辞拙劣的问题。我假设您希望保留所有
*-04-00
文件,并删除其余文件

# set up some files
$ touch ReportsBackup-201403{08,09,10}-{04,12,20}-00
$ ls -1
ReportsBackup-20140308-04-00
ReportsBackup-20140308-12-00
ReportsBackup-20140308-20-00
ReportsBackup-20140309-04-00
ReportsBackup-20140309-12-00
ReportsBackup-20140309-20-00
ReportsBackup-20140310-04-00
ReportsBackup-20140310-12-00
ReportsBackup-20140310-20-00

# use extended globbing
$ shopt -s extglob

# list the ones to keep
$ ls -1 *-04-00
ReportsBackup-20140308-04-00
ReportsBackup-20140309-04-00
ReportsBackup-20140310-04-00

# list all the ones you want to delete
$ ls -1 !(*-04-00)
ReportsBackup-20140308-12-00
ReportsBackup-20140308-20-00
ReportsBackup-20140309-12-00
ReportsBackup-20140309-20-00
ReportsBackup-20140310-12-00
ReportsBackup-20140310-20-00

对不起,这一点已经做了我需要的是删除所有的文件在3至3个月期间,我只想保留本月的文件和一个月的3和3个月,谢谢你的帮助无论如何你真的需要让你的问题更清楚。请编辑它。