[Solved] How remove leading whitespace from xml (sed /awk?)


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers [Solved] How remove leading whitespace from xml (sed /awk?)
# 1  
Old 08-28-2013
[Solved] How remove leading whitespace from xml (sed /awk?)

Hi again

I have an xml file and want to remove the leading white space as it causes me issues later in my script

I see sed is possible but cant seem to get it to work

I tried
Code:
sed 's/^ *//' file.xml


output
Code:
<xn:VsDataContainer id="1U104799" modifier="update">
                                <xn:attributes>
                                        <xn:vsDataType>vsDataExternalUtranCell</xn:vsDataType>
                                        <xn:vsDataFormatVersion>EricssonSpecificAttributes.12.26</xn:vsDataFormatVersion>
                                        <es:vsDataExternalUtranCell>
                                                <es:cellCapability>
<es:hsdschSupport>1</es:hsdschSupport>
<es:edchSupport>0</es:edchSupport>
<es:edchTti2Support>0</es:edchTti2Support>
<es:enhancedL2Support>0</es:enhancedL2Support>
<es:fdpchSupport>0</es:fdpchSupport>
<es:multiCarrierSupport>0</es:multiCarrierSupport>
<es:cpcSupport>0</es:cpcSupport>
<es:qam64MimoSupport>0</es:qam64MimoSupport>

I want all aligned to left

thanks again

paul
# 2  
Old 08-28-2013
Try:
Code:
sed 's/^[[:space:]]*//' file.xml

This User Gave Thanks to zaxxon For This Post:
# 3  
Old 08-28-2013
no its doesnt work in fact doesnt change file at all thanks though

I have a feeling its about tabs
# 4  
Old 08-28-2013
You can read all about it here- Regular expression - Wikipedia, the free encyclopedia
Code:
sed 's/^[[:blank:]]*//' file.xml

This User Gave Thanks to xbin For This Post:
# 5  
Old 08-28-2013
@aniquebmx:

Why should it change the file? You didn't ask to change the current file, that's why.
The output you get on the shell should have the leading spaces, whatever they are including tabs, being removed. If not, say so.
To "change" the file, either redirect it into another file and mv it or if your sed is capable of the -i switch it can directly change the file.
You can also use a similar line of perl code with the -i switch for example.
This User Gave Thanks to zaxxon For This Post:
# 6  
Old 08-28-2013
Hello

apologies Im new here and a lot to learn

the output to shell is still not how I want , therefore to a new file not how i want

output to shell

Code:
                               
                                        <es:vsDataExternalUtranCell>
                                                <es:qQualMin>-16</es:qQualMin>
                                                <es:agpsEnabled>0</es:agpsEnabled>
                                                <es:cellCapability>
                                <es:hsdschSupport>1</es:hsdschSupport>
                                <es:edchSupport>0</es:edchSupport>
                                <es:edchTti2Support>0</es:edchTti2Support>
                                <es:enhancedL2Support>0</es:enhancedL2Support>
                                <es:fdpchSupport>0</es:fdpchSupport>
                                <es:multiCarrierSupport>0</es:multiCarrierSupport>
                                <es:cpcSupport>0</es:cpcSupport>
                                <es:qam64MimoSupport>0</es:qam64MimoSupport>
                                                </es:cellCapability>
                                                <es:qRxLevMin>-115</es:qRxLevMin>
                                                <es:maxTxPowerUl>24</es:maxTxPowerUl>
                                                <es:individualOffset>0</es:individualOffset>
                                                <es:parentSystem>SubNetwork=OSSE_IDF1_R,vsDataExternalUtranPlmn=208_01_2</es:parentSystem>
                                                <es:mncLength>2</es:mncLength>
                                                <es:transmissionScheme>0</es:transmissionScheme>
                                        </es:vsDataExternalUtranCell>

I just need all aligned to left, each line

eg

Code:
<es:vsDataExternalUtranCell>
<es:qQualMin>-16</es:qQualMin>
<es:agpsEnabled>0</es:agpsEnabled>
<es:cellCapability>
<es:hsdschSupport>1</es:hsdschSupport>
<es:edchSupport>0</es:edchSupport>
<es:edchTti2Support>0</es:edchTti2Support>
<es:enhancedL2Support>0</es:enhancedL2Support>
<es:fdpchSupport>0</es:fdpchSupport>
<es:multiCarrierSupport>0</es:multiCarrierSupport>
<es:cpcSupport>0</es:cpcSupport>
<es:qam64MimoSupport>0</es:qam64MimoSupport>
</es:cellCapability>
<es:qRxLevMin>-115</es:qRxLevMin>
<es:maxTxPowerUl>24</es:maxTxPowerUl>
<es:individualOffset>0</es:individualOffset>
<es:parentSystem>SubNetwork=OSSE_IDF1_R,vsDataExternalUtranPlmn=208_01_2</es:parentSystem>
<es:mncLength>2</es:mncLength>
<es:transmissionScheme>0</es:transmissionScheme>
</es:vsDataExternalUtranCell>
</xn:attributes>
</xn:VsDataContainer>
</un:ExternalUtranCell>

thx again

I just tried also

Code:
 
sed 's/^[ \t]*//'  file.xml

also didnt work for the file I want

Last edited by aniquebmx; 08-28-2013 at 01:27 PM..
# 7  
Old 08-28-2013
Try this:
Code:
gacanepa@debian:~$ cat file.xml
 hola
 chau
 me
 voy
gacanepa@debian:~$ awk '{$1=$1}1' file.xml
hola
chau
me
voy
gacanepa@debian:~$

You may want to redirect the output of the last command to an empty file. Hope it helps.
This User Gave Thanks to gacanepa For This Post:
 
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

awk sed to repeat every character on same position from the upper line replacing whitespace

Hello is it possible with awk or sed to replace any white space with the previous line characters in the same position? I am asking this because the file I have doesn't always follow a pattern. For example the file I have is the result of a command to obtain windows ACLs: icacls C:\ /t... (5 Replies)
Discussion started by: nakaedu
5 Replies

2. Shell Programming and Scripting

[Solved] awk to remove lines

Hi, I have a file with contents. file1: <2013 tttaaa abc123 <2013 gggdddd <2013 sssssss <2013 eeeee I need to remove the lines which do not have the word "tttaaa" can some one help ? (7 Replies)
Discussion started by: giri_luck
7 Replies

3. Shell Programming and Scripting

awk to remove leading zeros for a hex number

Is it possible by using awk to remove leading zeros for a hex number? ex: 0000000011179E0A -> 11179E0A Thank you! (4 Replies)
Discussion started by: carloszhang
4 Replies

4. Shell Programming and Scripting

Sed: Remove whitespace between two strings

I have a 13 number string, some whitespace, and then /mp3. I need to join them. Everyline that I need this for begins with "cd" (without the quotes). What it looks like now: cd media/Audio/WAVE/9781933976334 /mp3 What I want my output to be: cd media/Audio/WAVE/9781933976334/mp3 The 13... (7 Replies)
Discussion started by: glev2005
7 Replies

5. Shell Programming and Scripting

Remove leading zeroes in 2nd field using sed

Hi Forum. I tried searching the forum but couldn't find a solution for my question. I have the following data and would like to have a sed syntax to remove the leading zeroes from the 2nd field only: Before: 2010-01-01|123|1|1000|2000|500|1500|600|700... (18 Replies)
Discussion started by: pchang
18 Replies

6. Shell Programming and Scripting

[solved] remove pattern with sed

Hi, i want to remove a certain pattern when i type pwd. pwd will look like this: ..../....../....../Pat_logs/..../....../...../...... the dotted lines are just random directory names, i want it to remove the "Pat_logs/...../....../....../" part so for example: ... (8 Replies)
Discussion started by: a27wang
8 Replies

7. Shell Programming and Scripting

Remove sections of a xml file with sed

I've been trying to remove some lines of a xml file that looks like this: <parent> <child>name1</child> <lots_of_other tags></lots_of_other_tags> </parent> <parent> <child>name2</child> <lots_of_other tags></lots_of_other_tags> </parent> <parent> <child>name3</child> ... (5 Replies)
Discussion started by: viniciusandre
5 Replies

8. Shell Programming and Scripting

sed over writes my original file (using sed to remove leading spaces)

Hello and thx for reading this I'm using sed to remove only the leading spaces in a file bash-280R# cat foofile some text some text some text some text some text bash-280R# bash-280R# sed 's/^ *//' foofile > foofile.use bash-280R# cat foofile.use some text some text some text... (6 Replies)
Discussion started by: laser
6 Replies

9. Shell Programming and Scripting

sed : remove whitespace

I'm trying to remove the whitespace at the end of each line of a text file in ksh. Im using sed s/ $//g' file1.txt > file2.txt It's not working. Any clues? (3 Replies)
Discussion started by: b.hamilton
3 Replies

10. Shell Programming and Scripting

while read loop preserving leading whitespace

Hi all, I've been trying to get this to work for ages to no avail. I've searched this site and googled but cannot find a satisfactory answer. I've got a while loop, like this while read line do echo "$line" done < file_name Now, my problem is that most of the lines in the file... (3 Replies)
Discussion started by: zazzybob
3 Replies
Login or Register to Ask a Question