Sponsored Content
Top Forums Shell Programming and Scripting How to edit file sections that cross multiple lines? Post 302386603 by Narnie on Tuesday 12th of January 2010 11:10:25 PM
Old 01-13-2010
MySQL Needing help with searching and replace in a file (sed?)

Hello,

I'm wondering where I could go to learn how to edit file sections that cross multiple lines. I'm wanting to write scripts that will add Gnome menu entries for all users on a system for scripts I write, etc. I can search an replace simple examples with sed, but this seems more complex.

I am on a 'doz system in a hotel right now so I can't post the actual file, but the Gnome menu entry has a structure similar to this:

Code:
<Menu>
    <Name>Accessibility</Name>
    <Directory>Accessibility.directory</Directory>
    <Include>
      <And>
        <Category>Accessibility</Category>
        <Not><Category>Settings</Category></Not>
      </And>
    </Include>
    <Exclude>
      <Filename>dasher.desktop</Filename>
    </Exclude>
  </Menu>

Say I need to change the markups for the dasher.desktop file from <Exclude> to <Include> and </Exclude> to </Include>?

What If I wanted to add a new <Include></Include> section for a new .desktop file?

Compounding this is that there is variable whitespace indentation depending on how deep into the structure one needs to go and it would be nice to keep the formatting for readability and a nicer, more polished look.

Basically, what is the technique for finding something, and then modifying something on lines above and/or below it OR finding a section, and then adding something on a line below that section without modifying that line in the process.

I don't mind learning myself, but I need pointed in the right direction. I'm not sure where to start. This seems like a bit of a big job for sed. If someone would want to code an example, I'm up for that too as I can learn from that (hey, learning is fun, right?)

With thanks,
Narnie

Last edited by Narnie; 01-13-2010 at 01:57 AM..
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Handle Configuration File with same name of Parameter in multiple Sections

Hi I have a config file with multiple section and a parameter with the same name in each section. I need to read each parameter for distinct section. Parameter = 1 .... Parameter = 2 .... Parameter = 4 .... Tried this: grep -m1 '^*ProcessorsNumber' ServiceBrokerFramework.cfg |... (7 Replies)
Discussion started by: potro
7 Replies

2. UNIX for Advanced & Expert Users

extract multiple sections of a file

I have a file that I need to parse multiple sections from the file. The file contains multiple lines that start with ST (Abunch of data) Then the file contains multiple lines that start with SE (Abunch of data) SE*30*0001 ... (1 Reply)
Discussion started by: rgentis
1 Replies

3. Shell Programming and Scripting

extract multiple sections of file

I have a file that I need to parse multiple sections from the file. The file contains multiple lines that start with ST (Abunch of data) Then the file contains multiple lines that start with SE (Abunch of data) SE*30*0001 ST*810*0002 I need all of the lines between and including these.... (6 Replies)
Discussion started by: rgentis
6 Replies

4. Shell Programming and Scripting

Edit number of lines in a file to single line

Greetings, I have a file: hostnames.txt which has - # cat hostnames.txt machine1 machine2 I need the output to be saved to a variable as: HOSTNAMELIST=machine1,machine2 Please advise. Thanks, Chiru (3 Replies)
Discussion started by: chiru_h
3 Replies

5. Shell Programming and Scripting

swaping sections of lines

Is it possible to do this with sed? Go from this: 958211 XXYYXXYYXX file1 file2 file3 958897 XXYYXXYYXX file1 file2 To this: file1 file2 file3 XXYYXXYYXX 958211 file1 file2 XXYYXXYYXX 958897 The only thing consistant is XXYYXXYYXX. The numbers and files vary in length. I have seen I... (5 Replies)
Discussion started by: crowman
5 Replies

6. Shell Programming and Scripting

How to get awk to edit in place and join all lines in text file

Hi, I lack the utter fundamentals on how to craft an awk script. I have hundreds of text files that were mangled by .doc format so all the lines are broken up so I need to join all of the lines of text into a single line. Normally I use vim command "ggVGJ" to join all lines but with so many... (3 Replies)
Discussion started by: n00ti
3 Replies

7. Shell Programming and Scripting

Need Help to Edit multiple column of a file

Hello Team, I want to know if there is any one liner command , using which I can edit multiple column of a file. input file input.txt (comma separated), taran, 12.45, uttam, 23.40, babay karan, 12.45, raju, 11.40, rahulg I want to update, 2nd and 4th column, but want all those column... (8 Replies)
Discussion started by: Uttam Maji
8 Replies

8. Shell Programming and Scripting

Removing multiple lines from input file, if multiple lines match a pattern.

GM, I have an issue at work, which requires a simple solution. But, after multiple attempts, I have not been able to hit on the code needed. I am assuming that sed, awk or even perl could do what I need. I have an application that adds extra blank page feeds, for multiple reports, when... (7 Replies)
Discussion started by: jxfish2
7 Replies

9. Shell Programming and Scripting

Edit and replace the multiple values in a file in one iteration

Hi All, I am preserving OLD and NEW values and want to replace the values in one go instead of using multiple sed and mv commands. Please help. echo "\nEnter the new qStart time '${CODE}' - (Hit Enter for No Change): \c" read NEW echo "\nEnter the new qStop time '${CODE}' - (Hit Enter for... (2 Replies)
Discussion started by: sdosanjh
2 Replies

10. Shell Programming and Scripting

Edit lines in file preserving part of it

Hello: I have the following HTML table: <table> <thead> <tr> <th>Code</th> <th>Percentage</th> </tr> </thead> <tbody> <tr> <td>1</td> <td>30%</td> </tr> <tr> <td>2</td> ... (3 Replies)
Discussion started by: Cacializ
3 Replies
EXO-DESKTOP-ITEM-EDIT(1)					   User Commands					  EXO-DESKTOP-ITEM-EDIT(1)

NAME
exo-desktop-item-edit - Create icons on the desktop DESCRIPTION
Usage: exo-desktop-item-edit [OPTION...] [FILE|FOLDER] Help Options: -?, --help Show help options --help-all Show all help options --help-gtk Show GTK+ Options Application Options: -c, --create-new Create a new desktop file in the given directory -t, --type Type of desktop file to create (Application or Link) --name Preset name when creating a desktop file --comment Preset comment when creating a desktop file --command Preset command when creating a launcher --url Preset URL when creating a link --icon Preset icon when creating a desktop file -v, --version Print version information and exit --display=DISPLAY X display to use AUTHOR
Written by Benedikt Meurer <benny@xfce.org>. exo-desktop-item-edit comes with ABSOLUTELY NO WARRANTY, You may redistribute copies of exo-desktop-item-edit under the terms of the GNU Lesser General Public License which can be found in the exo source package. Please report bugs to <http://bugzilla.xfce.org/>. COPYRIGHT
Copyright (C) 2005-2006 os-cillation e.K. All rights reserved. SEE ALSO
The full documentation for exo-desktop-item-edit is maintained as a Texinfo manual. If the info and exo-desktop-item-edit programs are properly installed at your site, the command info exo-desktop-item-edit should give you access to the complete manual. exo-desktop-item-edit 0.3.1.10rc1 September 2006 EXO-DESKTOP-ITEM-EDIT(1)
All times are GMT -4. The time now is 07:45 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy