准备和测试功能:
echo -e 'q\nd' > patt
cat patt
q
d
echo 'qweasd' | grep --file=patt
qweasd
如果您在文件中指定 2 个模板,则一切都会根据手册进行。如何通过使用换行符将一个模板分成多个部分来获得相同的结果?
或者这是一个错误手动的?
-e models
--regexp=patterns
使用模式作为一种或多种模式;模式中的换行符将每个模式与下一个模式分开。如果多次使用此选项或与 -f (--file) 选项结合使用,则搜索给定的所有模式。通常,当在 shell 命令中使用 grep 时,应该引用模式。 (-e 由 POSIX 指定。)
仅对指定的分离方法感兴趣,而不是这些变体:
grep -e 'pattern1\|pattern2'
grep -e 'pattern1' -e 'pattern2'
答案1
说明书准确,但方法不明显;在命令行中使用换行符:
$ grep -e 'q
> d' <<<"qweasd"
也就是说,键入grep -e 'q
,然后键入Enter,这应该会使您的 shell 显示辅助提示符(>
上面),然后输入d'
etc。