的作用是什么[0-9]*在以下语句中,它将将以偶数开头并后跟空格的所有行写入文件 Even:
sed -n 的/^[0-9]*[02468] //w 偶数' <文件
然后,消除[0-9]*
将具有相同的功能/输出。也就是说,两种说法的效果是一样的。
sed -n 's/^[02468] /&/w even' <file
这里没用[0-9]*
吗?我真的很困惑。请帮我。
答案1
这[0-9]*
并不是无用的;它匹配出现在偶数范围 ( [02468]
) 之前的任何数字 (0-9)。这是为了考虑多位偶数。
例如,如果您没有^[0-9]*
锚定到模式的开头,它将不匹配:
92
910
308
20
您提到的其他模式 ( /^[02468]/
) 只会匹配任何开始为偶数。