Insert text file only after the first match with SED
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 version="1.0" ... ?) but the xml Header is not only one line all the time, it could be about 2 or 3 lines.
first i tried with this.
Code:
sed '/?>/ r License_Header.txt' < xml-Datei.xml > tempFile.txt
mv tempFile.txt xml-Datei.xml
This is searching for the expression "?>" an insert the license Header after this expression and it also runs.
But if this Expression is in the file one more time, f.e. in another xml-header whis is in a comment, the shouldn't be insert again.
so i try to find a way, that only the first match was taken to consideration and hope that somebody can help me
Hi all,
I need to insert new text and change existing text in a file. For that I used the below line in the command line and got the expected output.
sed '$a\
hi...
' shell > shell1
But I face problem when using the same in script. It is throwing the error as,
sed: command garbled:... (4 Replies)
I can't seem to get sed to allow me to insert text in the first line of an empty file. I have a file.txt that is a 0 byte file. I want sed to insert " fooBar" onto the first line. I've tried a few options and nothing seems to work. They work just fine if there's text in the file tho. Help? (4 Replies)
sed '1r file.txt' <source.txt >desti.txt
This example will insert 'file.txt' between line 1 and 2 of source.txt.
sed '0r file.txt' <source.txt >desti.txt
gives an error message.
Does anyone know how 'sed' can insert 'file.txt' before the first line of source.txt? (18 Replies)
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)
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)
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)
Having a little trouble getting this to work just right.
I have xml files that i want to split some data.
I have 2 <name> tags within the file
I would like to take only the first tag and split the data.
tag example.
From this.
TAB<Name>smith, john</Name>
to
TAB<Name>smith,... (8 Replies)
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
LEARN ABOUT DEBIAN
stag-parse
STAG-PARSE(1p) User Contributed Perl Documentation STAG-PARSE(1p)NAME
stag-parse - parses a file and fires events (e.g. sxpr to xml)
SYNOPSIS
# convert XML to IText
stag-parse -p xml -w itext file1.xml file2.xml
# use a custom parser/generator and a custom writer/generator
stag-parse -p MyMod::MyParser -w MyMod::MyWriter file.txt
DESCRIPTION
script wrapper for the Data::Stag modules
feeds in files into a parser object that generates nestarray events, and feeds the events into a handler/writer class
ARGUMENTS
-p|parser FORMAT
FORMAT is one of xml, sxpr or itext, or the name of a perl module
this is the class that parsers the input file(s) and generates stag events
xml assumed as default
-w|writer FORMAT
FORMAT is one of xml, sxpr or itext, or the name of a perl module
this is the class that catches the events thrown by the parser; it can be any class, but the class is typically a writer
xml assumed as default
-o|out FILE
the writer will use this file (defaults to STDOUT)
-e|errf FILE
file to store parse error handler output
-errhandler FORMAT/MODULE
FORMAT is one of xml, sxpr or itext, or the name of a perl module
all parse error events go to this module
-r|root NODE_NAME
if this is specified, NODE_NAME becomes the root of the stag tree, and anything that was previously the root is placed below this.
this happens automatically if more than one file is parsed (because there can only be one tree root)
-color
Works only if the output handler is able to provide ASCII-colors (currently supported for itext and xml)
SEE ALSO
Data::Stag
This script is a wrapper for the method
Data::Stag->parse()
perl v5.10.0 2008-12-23 STAG-PARSE(1p)