我有一个包含数百万行的文件。每行以一个格式结尾说“XXX:某个值”..我只想从每行grep这个单词“XXX:some value”并将其单独放入file.How我可以用grep命令实现这个吗?
PS:“某些值”可以是任何字符串
答案 0 :(得分:4)
使用awk
获取每行的最后n个字符:
cat file
asdf
asdfg
asdfgh
awk -vn=2 '{print substr($0,length($0)-n+1)}'
df
fg
gh
或者您希望在XXX
之后获取数据,然后执行:
echo "here is my line XXX:22" | awk -F"XXX:" '{print $2}'
22
答案 1 :(得分:2)
使用-o
标志:
grep -o 'XXX:.*' <input >output
答案 2 :(得分:0)
您可以使用grep,如下所示:
grep -ow 'XXX:some value' myfile.txt > patternMatched.txt