11-09-2017
One issue, kind of a big one. Your code cuts everything out of the xml file before the first instance of the name tag. So if the name tag was at line 50, everything before that line gets deleted in the new file.
Also is there a way to keep line feed as CRLF similar to sed -b ?
I'll give the code is very fast. 5K files took 26 seconds vs 15 min for my method.
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Hello,
I'm new in Shell scripting but i should write a script, which inserts the license header out of a txt-File into the files in our Projekt. For the Java classes it runs without Problems but for XML files not. At xml-files i have to put the license Header after the xml-Header (?xml... (1 Reply)
Discussion started by: PhoenixONE
1 Replies
2. Shell Programming and Scripting
Greetings all,
I am trying to match a string, and after that insert a few lines above that match.
The string is "Version 1.0.0". I need to insert a few lines ONLY above the first match (there are many Version numbers in the file). The rest of the matches must be ignored. The lines I need to... (2 Replies)
Discussion started by: nagaraj s
2 Replies
3. Shell Programming and Scripting
Hello,
I have the following variables set in my env
echo $MY_XSD_FILE
/home/jak/sample.xsd
echo $MY_INTERVAL_VALUE
4
I want to insert them between the xml tags in my xml file
cat sample.xml
:::::::::::::::
:::::::::::::::
<property name="FILE"></property>
:::::::::::::::::::::::... (2 Replies)
Discussion started by: jakSun8
2 Replies
4. Shell Programming and Scripting
Hi,
i have an xml file and i want to edit a new sub node in a file
like
val="<activity android:label="@string/app_name" android_name=".MainActivity1" android:launchMode="singleTask" android:screenOrientation="portrait"
... (1 Reply)
Discussion started by: gautamshrm3
1 Replies
5. Shell Programming and Scripting
Hi!
Considering below text, how would I use sed to insert text right below the v0005-line, using the SEPARATOR-line as a pattern to search for, so two lines above the separator? I can do it right above the separator, but not 2 lines...
# v0004 - Some text
# v0005 - More text
#... (5 Replies)
Discussion started by: indo1144
5 Replies
6. Shell Programming and Scripting
The below bash connects to a site, downloads a file, searches that file based of user input - could be multiple (all that seems to work). What I am not able to figure out is how to display on the screen match found or no match found" and write a file to a directory (C:\Users\cmccabe\Desktop\wget)... (4 Replies)
Discussion started by: cmccabe
4 Replies
7. Shell Programming and Scripting
Have a file which has the create statement like below
create table emp
( empno integer,
empname char(50))
primary index(empno);
i need to find a string starting with create and ends with semi-colon ;. if so insert the below statement before create statement
rename table emp to emp_rename;... (2 Replies)
Discussion started by: Mohan0509
2 Replies
8. Shell Programming and Scripting
i'm using the following code to add the entire content of a file (/tmp/resources.txt) to the line directly below the line containing a pattern (wonderful) in the file mainfile.txt:
sed '/^wonderful/ r /tmp/resources.txt' mainfile.txt
the problem is, it adds the entire content of... (1 Reply)
Discussion started by: SkySmart
1 Replies
9. Programming
Hello Team,
I have 2 files.one contains english text and another contains Japanese. so i have to read english text and replace the text with Japanesh text in third file.
Basically, I need a help to write japanese language in text/xml file.I heard wstring does this.Not sure how do i write... (2 Replies)
Discussion started by: SA_Palani
2 Replies
10. Shell Programming and Scripting
hi all,
trying this using shell/bash with sed/awk/grep
I have two files, one containing one column, the other containing multiple columns (comma delimited).
file1.txt
abc12345
def12345
ghi54321
...
file2.txt
abc1,text1,texta
abc,text2,textb
def123,text3,textc
gh,text4,textd... (6 Replies)
Discussion started by: shogun1970
6 Replies
XO(1) BSD General Commands Manual XO(1)
NAME
xo -- emit formatted output based on format string and arguments
SYNOPSIS
xo [-options] [argument...]
DESCRIPTION
The xo utility allows command line access to the functionality of the libxo library. Using xo, shell scripts can emit XML, JSON, or HTML
using the same commands that emit text output.
--close <path> Close tags for the given path
--depth <num> Set the depth for pretty printing
--help Display this help text
--html OR -H Generate HTML output
--json OR -J Generate JSON output
--leading-xpath <path>
Add a prefix to generated XPaths (HTML)
--open <path> Open tags for the given path
--pretty OR -p Make 'pretty' output (add indent, newlines)
--style <style> Generate given style (xml, json, text, html)
--text OR -T Generate text output (the default style)
--version Display version information
--warn OR -W Display warnings in text on stderr
--warn-xml Display warnings in xml on stdout
--wrap <path> Wrap output in a set of containers
--xml OR -X Generate XML output
--xpath Add XPath data to HTML output
The xo utility accepts a format string suitable for xo_emit(3) and a set of zero or more arguments used to supply data for that string.
xo "The {k:name} weighs {:weight/%d} pounds.0 fish 6
TEXT:
The fish weighs 6 pounds.
XML:
<name>fish</name>
<weight>6</weight>
JSON:
"name": "fish",
"weight": 6
HTML:
<div class="line">
<div class="text">The </div>
<div class="data" data-tag="name">fish</div>
<div class="text"> weighs </div>
<div class="data" data-tag="weight">6</div>
<div class="text"> pounds.</div>
</div>
The --wrap <path> option can be used to wrap emitted content in a specific hierarchy. The path is a set of hierarchical names separated by
the '/' character.
xo --wrap top/a/b/c '{:tag}' value
XML:
<top>
<a>
<b>
<c>
<tag>value</tag>
</c>
</b>
</a>
</top>
JSON:
"top": {
"a": {
"b": {
"c": {
"tag": "value"
}
}
}
}
The --open <path> and --close <path> can be used to emit hierarchical information without the matching close and open tag. This allows a
shell script to emit open tags, data, and then close tags. The --depth option may be used to set the depth for indentation. The
--leading-xpath may be used to prepend data to the XPath values used for HTML output style.
#!/bin/sh
xo --open top/data
xo --depth 2 '{tag}' value
xo --close top/data
XML:
<top>
<data>
<tag>value</tag>
</data>
</top>
JSON:
"top": {
"data": {
"tag": "value"
}
}
EXAMPLE
% xo 'The {:product} is {:status}0 stereo "in route"
The stereo is in route
% xo -p -X 'The {:product} is {:status}0 stereo "in route"
<product>stereo</product>
<status>in route</status>
ADDITIONAL DOCUMENTATION
Complete documentation can be found on github:
http://juniper.github.io/libxo/libxo-manual.html
libxo lives on github as:
https://github.com/Juniper/libxo
The latest release of libxo is available at:
https://github.com/Juniper/libxo/releases
SEE ALSO
libxo(3), xo_emit(3)
HISTORY
The libxo library was added in FreeBSD 11.0.
AUTHOR
Phil Shafer
BSD
December 4, 2014 BSD