我有一个如下所示的 xml 文件。我如何使用 grep 来搜索这个文件并将所有 url 传送到一个由新行分隔的文件中。
<menus>
<defaultMenu>
<group>
<menuItem name="Example one" url="http://www.google.com">
<menuItem name="Example Two" url="http://www.yahoo.com" />
<menuItem name="Example Three" url="http://www.bing.com" />
</menuItem>
</group>
</defaultMenu>
</menus>
例如我希望输出文件包含:
http://www.google.com
http://www.yahoo.com
http://www.bing.com
最佳答案
如果您想尝试 gnu awk
(由于 RS)
awk -v RS="url" -F\" 'NR>1{print $2}' file >newfile
http://www.google.com
http://www.yahoo.com
http://www.bing.com
一个简单的awk
awk -F\" '/url/{print $4}' file
http://www.google.com
http://www.yahoo.com
http://www.bing.com
这仅在格式始终相同时有效。
关于linux - 在 linux 中使用 grep 将 xml 文件中包含的所有 url 传输到单独的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24079254/