Shell script parse xml in linux

How to use shell script parse xml file. In this tutorial, I will use grep command, awk command and sed command Reading xml file extracting value in linux.

For example xml person file as below

<person>
  <sex>Male</sex>
  <firstname>Huu</firstname>
  <lastname>Phan</lastname>
  <sex>female</sex>
  <firstname>Miranda</firstname>
  <lastname>Kerr</lastname>
</person>
How to extracting value Huu and Miranda  of <firstname> </firstname>

Use grep command

[huupv@huupv huuphan.com]$ grep -oP '(?<=<firstname>).*(?=</firstname)' person.xml

Use awk command

[huupv@huupv huuphan.com]$ awk -F "[><]" '/firstname/{print $3}' person.xml

Use sed command

[huupv@huupv huuphan.com]$ sed -n '/firstname/{s/.*<firstname>//;s/<\/firstname.*//;p;}' person.xml 
The result, Shell script parse xml in linux


Comments

Popular posts from this blog

How to Install Python 3.13

Best Linux Distros for AI in 2025

How to Play Minecraft Bedrock Edition on Linux: A Comprehensive Guide for Tech Professionals