是否有任何方法grep
或以任何其他方式获取文件中每对双引号内的所有文本实例?我见过这样的答案:https://stackoverflow.com/questions/15435056/grep-string-inside-double-quotes但它们不适用于每行可能包含任意数量的带引号的字符串的情况。
对于这样的输入:
Here was some "text over here", and then there was "text over there".
我希望输出是:
"text over here"
"text over there"
不必包含引文本身。
答案1
$ cat aaaa
foo "bar" base "ere" fff
"fff"ggggg"rr"
$ grep -o '"[^"]*"' aaaa
"bar"
"ere"
"fff"
"rr"
答案2
尝试:
grep -o '"[^"]*"' /path/to/file
注意:[^"]*
是通配符(.*
)的非贪婪版本,因此每行可以匹配多个出现的情况。