如何从grep输出中删除最后一个字符?
我有一个文本文件,其中包含以下内容(例如): 我尝试在一对引号之间包含所有字符串,最后我使用以下命令结束:如何从grep输出中删除最后一个字符?,grep,text-processing,Grep,Text Processing,我有一个文本文件,其中包含以下内容(例如): 我尝试在一对引号之间包含所有字符串,最后我使用以下命令结束: grep -Po '"\K[^"]+"' file 这个命令给了我如下信息: One" Two " Three " Four " foo " baz" zoo" 而我想要的来自上面的结果是我想要的输出: One Two Three Four foo baz zoo 请有人帮我从上面的grep输出中删除最后一个“。我不想从输出中删除空格。我没有任何扩展到多行
grep -Po '"\K[^"]+"' file
这个命令给了我如下信息:
One"
Two "
Three "
Four "
foo "
baz"
zoo"
而我想要的来自上面的结果是我想要的输出:
One
Two
Three
Four
foo
baz
zoo
请有人帮我从上面的grep
输出中删除最后一个“
。我不想从输出中删除空格。我没有任何扩展到多行的单词。例如:
... "foo "bar" ba
z""zoo" ...
请,请不要建议我可以使用多个命令,我知道我可以。我想问你,我是否可以用grep和它的选项单独使用?如果你不能用
grep
解决它,这里有一个awk
awk -F\" '{for (i=2;i<=NF;i+=2) {gsub(/ /,"");print $i}}' file
One
Two
Three
Four
foo
baz
zoo
awk-F\“{for(i=2;i如果你不能用grep
awk -F\" '{for (i=2;i<=NF;i+=2) {gsub(/ /,"");print $i}}' file
One
Two
Three
Four
foo
baz
zoo
awk-F\“{for(i=2;i如果你不能用grep
awk -F\" '{for (i=2;i<=NF;i+=2) {gsub(/ /,"");print $i}}' file
One
Two
Three
Four
foo
baz
zoo
awk-F\“{for(i=2;i如果你不能用grep
awk -F\" '{for (i=2;i<=NF;i+=2) {gsub(/ /,"");print $i}}' file
One
Two
Three
Four
foo
baz
zoo
awk-F\“{for(i=2;i这可以通过下面的grep一行程序实现
$ grep -oP '"\K[^"]+(?="(?:[^"]*"[^"]*")*[^"]*$)' file
One
Two
Three
Four
foo
baz
zoo
另一个通过PCRE动词的黑客行为
这可以通过下面的grep-one-liner实现
$ grep -oP '"\K[^"]+(?="(?:[^"]*"[^"]*")*[^"]*$)' file
One
Two
Three
Four
foo
baz
zoo
另一个通过PCRE动词的黑客行为
这可以通过下面的grep-one-liner实现
$ grep -oP '"\K[^"]+(?="(?:[^"]*"[^"]*")*[^"]*$)' file
One
Two
Three
Four
foo
baz
zoo
另一个通过PCRE动词的黑客行为
这可以通过下面的grep-one-liner实现
$ grep -oP '"\K[^"]+(?="(?:[^"]*"[^"]*")*[^"]*$)' file
One
Two
Three
Four
foo
baz
zoo
另一个通过PCRE动词的黑客行为
@KasiyA不是所有的问题都可以用grep
轻松解决。你没有awk
?@KasiyA不是所有的问题都可以用grep
轻松解决。你没有awk
?@KasiyA不是所有的问题都可以用grep
轻松解决。你没有awk
?@KasiyA不是所有的问题都可以用grep
轻松解决。你没有吗haveawk
?但是正则表达式匹配是贪婪的,所以只搜索[^”]+而不带尾随“应该足够了吧?但是正则表达式匹配是贪婪的,所以只搜索[^”]+而不带尾随“应该足够了吧?但是正则表达式匹配是贪婪的,所以只搜索[^”]+没有尾随“应该足够了,不是吗?但是正则表达式匹配是贪婪的,所以只搜索[^”]+而没有尾随“应该足够了,不是吗?