如何使用 shell脚本在字符串中查找日期?
例如,我有这个字符串“/foo/bar/mxm-20140908.txt
”
并且输出应该是20140908
,谢谢!
答案 0 :(得分:1)
您可以将egrep
与-o
选项一起使用。其中一个使用-
分隔符(根据原始问题):
pax> echo /foo/bar/mxm-2014-09-08.txt | egrep -o '[0-9]{4}(-[0-9]{2}){2}'
2014-09-08
或者,没有分隔符(根据所做的更改):
pax> echo /foo/bar/mxm-20140908.txt | egrep -o '[0-9]{8}'
20140908
如果八位数字可能出现在非日期背景中的某个地方,那么在后一种情况下一定要小心。