2016-04-21 40 views
1

我有一个文件位置如何忽略数字

/appl/bcm_prod/u/scratch/markit/markitdownloader_20160420_25918.log 

我知道的年,月,日的变量,我怎么忽略字符串的其余部分? 例如,

/appl/bcm_prod/u/scratch/markit/markitdownloader_%Y%m%d_25918.log 

我该怎么把为25918 ID可以每天改变。

+0

您可以使用'\ d +' – Tushar

+0

'/ appl/bcm_prod/u/scratch/markit/markitdownloader_%Y%m%d_ \ d +'...展开@Tushar的评论。 –

+0

我试过了,它没有工作。我收到了一个打开的文件失败的错误 –

回答

0

什么是正则表达式?

有以下实例:

find /appl/bcm_prod/u/scratch/markit/ -regex ".*/markitdownloader_20160420_[0-9][0-9]*.log" -type f 

find /appl/bcm_prod/u/scratch/markit/ -type f | grep "markitdownloader_20160420_[0-9][0-9]*.log" 

ls /appl/bcm_prod/u/scratch/markit/markitdownloader_20160420_*.log 

ls /appl/bcm_prod/u/scratch/markit/markitdownloader_20160420_+([[:digit:]]).log 
0

通常为正则表达式,你既可以使用*.*。所以你会根据需要放置日期,然后根据你的正则表达式版本,然后*.log.*.log*,取决于正则表达式版本,意味着0或任何或通配符。如果*不是通配符,则.是。在bash上我会说logname_date_*.log就是你要找的。