bash shell通配符模式匹配

时间:2014-12-11 17:04:56

标签: shell unix filtering wildcard

如何过滤文本并匹配dd,大写字母后跟2个字符的行。 4位数,例如," 20,2014年4月和#34;," 2,2013年3月和#34;仅使用bash shell。没有sed或awk。

2 个答案:

答案 0 :(得分:1)

这个通配符应该这样做:

[0-3][0-9],[A-Z][a-z][a-z].{19,20}[0-9][0-9]

它只允许在20世纪和21世纪的几年,我认为如何扩大它是显而易见的。

答案 1 :(得分:0)

cat fileName | grep -E '^[0-9]{1,2},[A-Z][a-z][a-z].[0-9][0-9][0-9][0-9]'

这将匹配“20,Apr.2014”,“2,Mar.2013”​​模式。 {1,2}表示一位或两位数。