Sponsored Content
Top Forums Shell Programming and Scripting Grab XML attributes from file with bash script Post 303045636 by joddclaude on Sunday 5th of April 2020 08:15:48 AM
Old 04-05-2020
Grab XML attributes from file with bash script

Hi,

I need to grab attributes from the XML file with pure bash script.

So I have the following XML file with a root element `Group` and lots of `Person` elements, every of them has `id` and `username` attributes. `id` is unique value for each element:

Code:
<?xml version="1.0" encoding="UTF-8"?>
<Group id="RW_8987"
       dept_id="D_12"
       main="false">

    <Person id="P_0001"
            email="email0001@example.com"
            username="person_0001"
            password="pass_0001"/>

    <Person id="P_0002"
            email="email0002@example.com"
            username="person_0002"
            password="pass_0002"/>

    <!--  ...  -->
</Group>

And I need to use bash script to extract the `id` and `username` attributes into some key-value structure:

Code:
P_0001=person_0001
P_0002=person_0002

Checked other related answers, but most of them suggest to use some XML parsers like xmllint. But unfortunately I do not have them on the target machine.

Can you kindly suggest what how I can achieve this. Thanks in advance.
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

How to remove xml namespace from xml file using shell script?

I have an xml file: <AutoData xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <Table1> <Data1 10 </Data1> <Data2 20 </Data2> <Data3 40 </Data3> <Table1> </AutoData> and I have to remove the portion xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" only. I tried using sed... (10 Replies)
Discussion started by: Gary1978
10 Replies

2. Windows & DOS: Issues & Discussions

DOS script to grab the first file in a dir and rename it

:confused: Hello, Is there any way to use the dir command / some DOS Script to select only first file of similar pattern of files in a direcotory and rename it for example, one directory has 5 files abc_1005.txt abc_5256.txt abc_2001.txt abc_2003.txt abc_3006.txt by use script I would... (2 Replies)
Discussion started by: raghav525
2 Replies

3. Shell Programming and Scripting

reading xml attributes with shell script

Hi, Iam new to shell scripting.I have below urgent requirement I want to read attributes (transaction,documentmode) in xml tag with shell scripting and create a filename with these attribues Xml : <PURCHASE_10 partner="food" version="1.50" timestamp="2009-03-10T09:56:55"... (3 Replies)
Discussion started by: swetha123
3 Replies

4. Shell Programming and Scripting

Need to Parse XML from bash script

I am completely new to bash scripting and now need to write a bash script that would parse a XML file and take out values from specific tags. I tried using xsltproc, xml_grep commands. But the issue is that the XML i am trying to parse is not UTF 8. so those commands are unable to parse my XML's... (4 Replies)
Discussion started by: shivashankar.g
4 Replies

5. Shell Programming and Scripting

Rewriting file paths in XML file within bash script

Hi guys, I'm working on a large set of scripts to move files around several servers and manipulate them for our staff. Basically we're shooting things, the videos hit a server and then need organised due to the language they've been shot in. Our XML (designed for Apple's Final Cut Pro) is right... (6 Replies)
Discussion started by: omfgbunnies
6 Replies

6. Shell Programming and Scripting

bash extract all occurences delimited from <name> and </name> tags from an xml file

I need to extract all text delimited from <name> and </name> tags from an xml file, but not only first occurence. I need to extract all occurences. I've tried with this command: awk -F"<name>|</name>" 'NF>2{print $2}' but it give only first occurence. How can i modify it? (18 Replies)
Discussion started by: ingalex
18 Replies

7. Shell Programming and Scripting

XML- Sed || Awk Bash script... Help!

Hi ! I'm working into my first bash script to make some xml modification and it's going to make me crazy lol .. so I decide to try into this forum to take some ideas from people that really know about this! This is my situation I've and xml file with a lots of positional values with another tags... (9 Replies)
Discussion started by: juampal
9 Replies

8. Shell Programming and Scripting

How to grab data from xml block?

I tried searching the forums, but couldn't find anything relevant to my question. I have an xml file like the following: <topLevel numberBlock="BLOCK1"> <item="content1" title="Content 1"> <RefPath="path/to/file1.txt /> </item> <item"content2" title="Content 2" >... (4 Replies)
Discussion started by: jl487
4 Replies

9. Shell Programming and Scripting

BASH script to parse XML and generate CSV

Hi All, Hope all you are doing good! Need your help. I have an XML file which needs to be converted CSV file. I am not an expert of awk/sed so your help is highly appreciated!! XML file looks like this: <l:event dateTime="2013-03-13 07:15:54.713" layerName="OSB" processName="ABC"... (2 Replies)
Discussion started by: bhaskar_m
2 Replies

10. UNIX for Beginners Questions & Answers

How to insert subnode in xml file using xmlstarlet or any other bash command?

I have multiple xml files where i want to update a subnode if the subnode project points to different project or insert a subnode if it doesn't exist using a xmlstarlet or any other command that can be used in a bash script. I have been able to update the subnode project if it doesn't point to... (1 Reply)
Discussion started by: Sekhar419
1 Replies
DH_INSTALLXMLCATALOGS(1)					     Debhelper						  DH_INSTALLXMLCATALOGS(1)

NAME
dh_installxmlcatalogs - install and register XML catalog files SYNOPSIS
dh_installxmlcatalogs [debhelper options] [-n] DESCRIPTION
dh_installxmlcatalogs is a debhelper program that installs and registers XML catalog files. It complies with the Debian XML/SGML policy. The file debian/package.xmlcatalogs lists the local XML catalog files to be installed per package as well as the XML entities in those local XML catalog files that are to be registered in the XML catalog system. The local XML catalog file entries in that file should be of the form "local;source;dest", where the verbatim "local" indicates this is an entry for a local XML catalog file, "source" indicates where the local XML catalog resides in the source tree, and "dest" indicates the destination location for the local XML catalog under the package build area. "dest" should start with /usr/share/xml/. The entries for the XML entities to be registered in the package XML catalog file should be of the form "package;type;id;catalog", where the verbatim "package" indicates this is an entry for an XML entity to be registered in the package XML catalog file, "type" indicates the XML entity type (public, system, uri), "id" indicates the XML entity id, and "catalog" indicates the local XML catalog file. The entries for the XML entities to be registered in the root XML catalog file should be of the form "root;type;id", where the verbatim "root" indicates this is an entry for an XML entity to be registered in the root XML catalog file, "type" indicates the XML entity type (public, system, uri), and "id" indicates the XML entity id. If an entry for is to be registered identically in the root catalog and the package catalog file, you can use the form "root-and-package;type;id;catalog", where the verbatim "root-and-package" indicates this is an entry for an XML entity to be registered in both the root and package XML catalog files, "type" indicates the XML entity type (public, system, uri), "id" indicates the XML entity id, and "catalog" indicates the local XML catalog file. XML entity types are described in update-xmlcatalog(8). Using the "root" or "package" commands, a type of "public" will general "delegatePublic" statements in the applicable catalog file. Generally you will want to use the types "public" for any formal public identifiers, and "system" for any files on the local filesystem or URLs. "uri" is only used for non-local files which are not part of the external document subset, e.g., they are not used for entities or DTDs. dh_installxmlcatalogs automatically adds maintainer script snippets for the registration and unregistration of the listed XML entities in the XML catalog system (unless -n is used). A dependency on the xml-core package will be added to "${misc:Depends}", so be sure to use that variable in the file debian/control. See dh_installdeb(1) for an explanation of Debhelper maintainer script snippets. OPTIONS
-n, --noscripts Do not modify postinst/postrm/prerm scripts. NOTES
Note that this command is not idempotent. "dh_clean -k" should be called between invocations of this command. Otherwise, it may cause multiple instances of the same text to be added to maintainer scripts. SEE ALSO
debhelper(7) /usr/share/doc/xml-core/ AUTHOR
Ardo van Rangelrooij <ardo@debian.org> Adam Di Carlo <aph@debian.org> perl v5.14.2 2012-09-10 DH_INSTALLXMLCATALOGS(1)
All times are GMT -4. The time now is 08:24 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy