我想写一个脚本,从文件中读取行以wt ^和p ^开头的行。 我能够得到wt ^但是我无法得到p ^ ... 并且有20个wt ^与相应的p ^现在我必须得到10个每个wt ^与其对应的p ^在两个不同的文件中,
我该怎么做?
cat $( ls unit-*-slides.txt | sort -n ) | grep "st^" | split -l 200
我使用了上面的代码
wt^blah blah
p^blah blah blah blah
p^blah blah blah blah
p^blah blah blah blah
p^blah blah blah blah
p^blah blah blah blah blah blah
p^blah blah blah blah blah blah blah blah
p^blah blah blah blah blah blah
p^blah blah blah blah blah blah
p^blah blah blah blah blah blah
答案 0 :(得分:1)
似乎你在p^
之前有一些空格。我复制pested你的例子,这grep工作得很好
grep -E "[ ]*(wt\^|p\^)" <file>
它考虑到在行开头之前可能有n个空格。您可以附加xargs
答案 1 :(得分:0)
使用此正则表达式^(wt\^)|(p\^)
来匹配与wt^
或p^
同样在您的帖子中,似乎p^
的行在开头有space
或tab
,这可能是您的正则表达式不匹配的原因^p\^