Sponsored Content
Top Forums Shell Programming and Scripting sed has zeored my files. Help me with sed please Post 302309617 by devtakh on Wednesday 22nd of April 2009 11:37:38 AM
Old 04-22-2009
Quote:
Originally Posted by timgolding
i made a script to update a lot of xml files. to save me some time. Ran it and it replaced all the the files with a 0kb file. The problem i was having is that I am using sed to change xml node <doc_root>. The problem with this is it has a / in the closing xml tag and the stuff inside will also have a bunch of / because it is a file path. so i am using sed and was hoping this would work:

Code:
sed 's/<doc_root><\/doc_root>/<doc_root>\/'$i'\/web<\/doc_root>/g' $my_file > $my_file

Is my problem in the regex or is it because I am using $my_file > $my_file ? do i need to copy it to a temp file first the mv it to old file?
Or if its the regex can someone help with that
Here is the search string
Code:
<doc_root></doc_root>

Here is a typical replace string
Code:
<doc_root>/domain.co.uk/web</doc_root>

where the daomin.co.uk will be an argument from a for loop i.e $i

Please help before my boss gets angry with me Smilie

I will look into the function of the sed but you are redirecting the output to the same file name, you shud never do that. that is why u have 0kb file.

redirect it to a temp file
verify the result
mv tempfile filename


cheers,
Devaraj Takhellambam
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Issue with a sed one liner variant - sed 's/ ; /|/g' $TMP1 > $TMP

Execution of the following segment is giving the error - Script extract:- OUT=$DATADIR/sol_rsult_orphn.bcp TMP1=${OUT}_tmp1 TMP=${OUT}_tmp ( isql -w 400 $dbConnect_OPR <<EOF select convert(char(10), s.lead_id) +'|' + s.pho_loc_type, ";", s.sol_rsult_cmnt, ";", +'|'+ s.del_ind... (3 Replies)
Discussion started by: kzmatam
3 Replies

2. 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

3. Shell Programming and Scripting

deleting text records with sed (sed paragraphs)

Hi all, First off, Thank you all for the knowledge I have gleaned from this site! Deleting Records from a text file... sed paragraphs The following code works nearly perfect, however each time it is run on the log file it adds a newline at the head of the file, run it 5 times, it'll have 5... (1 Reply)
Discussion started by: Festus Hagen
1 Replies

4. UNIX for Dummies Questions & Answers

SED: Can't Repeat Search Character in SED Output

I'm not sure if the problem I'm seeing is an artifact of sed or simply a beginner's mistake. Here's the problem: I want to add a zero-width space following each underscore between XML tags. For example, if I had the following xml: <MY_BIG_TAG>This_is_a_test</MY_BIG_TAG> It should look like... (8 Replies)
Discussion started by: rhetoric101
8 Replies

5. UNIX for Dummies Questions & Answers

SED on multiple files

Hello all, Search & replace works fine using sed on a single file. Ex: sed -i 's/day/night/g' test1.sh There are many *.sh files in my current directory that I would like use sed on. I tried running the sed command using wild card but it did not work. sed -i 's/day/night/g' *.sh ... (7 Replies)
Discussion started by: luft
7 Replies

6. Shell Programming and Scripting

How to use sed to replace the a string in the same file using sed?

How do i replace a string using sed into the same file without creating a intermediate file? (7 Replies)
Discussion started by: gomes1333
7 Replies

7. Shell Programming and Scripting

sed inside sed for replacing string

My need is : Want to change docBase="/something/something/something" to docBase="/only/this/path/for/all/files" I have some (about 250 files)xml files. In FileOne it contains <Context path="/PPP" displayName="PPP" docBase="/home/me/documents" reloadable="true" crossContext="true">... (1 Reply)
Discussion started by: linuxadmin
1 Replies

8. Shell Programming and Scripting

Sed files in a Directory

Hello. I need to be able to run this sed command to all files named Object.obj in subfolders named Prop00 to Prop151 (hexadecimal) in the main folder convert. Please let me know if there is a solution to this problem. sed 's!\o primary*!g primary!'... (7 Replies)
Discussion started by: Blue Solo
7 Replies

9. Shell Programming and Scripting

sed and awk giving error ./sample.sh: line 13: sed: command not found

Hi, I am running a script sample.sh in bash environment .In the script i am using sed and awk commands which when executed individually from terminal they are getting executed normally but when i give these sed and awk commands in the script it is giving the below errors :- ./sample.sh: line... (12 Replies)
Discussion started by: satishmallidi
12 Replies

10. Shell Programming and Scripting

I am learning regular expression in sed,Please help me understand the use curly bracket in sed,

I am learning SED and just following the shell scripting book, i have trouble understanding the grep and sed statement, Question : 1 __________ /opt/oracle/work/antony>cat teledir.txt jai sharma 25853670 chanchal singhvi 9831545629 anil aggarwal 9830263298 shyam saksena 23217847 lalit... (7 Replies)
Discussion started by: Antony Ankrose
7 Replies
XGFMERGE(1)						      General Commands Manual						       XGFMERGE(1)

NAME
xgfmerge - merges two Xgridfit program files SYNOPSIS
xgfmerge [options] file-a file-b [...] DESCRIPTION
Xgfmerge merges two or more Xgridfit program files, where file-a is a program generated automatically from an existing font using TTX and ttx2xgf, and file-b and any other files in the list contain other programming for the font. Xgfmerge outputs the merged programming to stdout. To capture the output in a file, use this syntax: $xgfmerge -o merged-file.xgf file-a.xgf file-b.xgf Note: To merge Xgridfit instructions with those already in a font, the best method is now to run Xgridfit in merge-mode (option -m). OPTIONS
-c Look for a <default type="compile-globals"/> element in each file after the first in the list. If value="no" then ignore all <default>, <control-value>, <function>, <macro> and <pre-program> elements in the file. -h Display a help message. -n Merge <no-compile> elements from all files. <glyph> elements with duplicate "ps-name" attributes are ignored. -o file The file to write the output to. If this option is not used, output is written to stdout. -p When a <pre-program> element in a file other than file-a is available, use it instead of the one from file-a. If this option is not present, xgfmerge merges the programming in the <pre-program> of file-a with that in the <pre-program> of whichever file is being merged at the moment. The result is unlikely to be good if a single run of xgfmerge merges the contents of more than two <pre- program> elements. -s Sort <glyph> elements in the output file into alphabetical order. -v Verbose output: xgfmerge tells you what it is doing at each step. -x Resolve XIncludes before merging all files in the list except for file-a. Any XIncludes from file-a.xgf are stripped out of the files before this operation is performed. If XInclude is used to bring global elements (<control-value>, <function>, etc.) into these files, it is probably a good idea to use the -c option as well. FILES
/usr/share/xml/xgridfit/util/merge.xsl An XSLT script that performs the merge. /usr/share/xml/xgridfit/util/xinclude.xsl An XSLT script that strips out unwanted XIncludes. /usr/share/xml/xgridfit/util/sort-glyphs.xsl An XSLT script that sorts glyph elements in a file. /usr/share/xml/xgridfit/utils/add-blanks.sed Does some formatting of the output. SEE ALSO
xgridfit(1), ttx(1), ttx2xgf(1). AUTHOR
Xgfmerge was written by Peter Baker <psb6m@virginia.edu>. This manual page was written by Peter Baker 2009-12-18 XGFMERGE(1)
All times are GMT -4. The time now is 01:49 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy