Sponsored Content
Top Forums UNIX for Dummies Questions & Answers how to replace one line in text with several lines Post 302103398 by FunnyCats on Thursday 18th of January 2007 08:01:35 AM
Old 01-18-2007
how to replace one line in text with several lines

Hi,
I need to replace a specific line in a text (eg the line contains the word MYSERVER) with a number of lines (let's say 4) in which the word MYSERVER will be replaced with
server1 in the first line
server2 in the second line
server3 in the 3rd line
server4 in the 4th line

The original text would be something like
lline1
line2
line3

THIS IS THE LINE WITH MYSERVER
line4
line5


The resulting text should be like:
lline1
line2
line3

THIS IS THE LINE WITH server1
THIS IS THE LINE WITH server2
THIS IS THE LINE WITH server3
THIS IS THE LINE WITH server4

line4
line5


If anyone could help with this it would be great!
Thank you.
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Replace line of text in a file

I need to change the first line a file from "HDR,{any_number}",,,,, where {any_number} is incremental for each file to HDR,{any_number} Can someone please suggest an easy way please Regards Col (3 Replies)
Discussion started by: colinchase
3 Replies

2. UNIX for Advanced & Expert Users

Replace the text between two lines with different text

I have a file which contains the following data. Parameters "CParameters" BEGIN DSSUBRECORD Name "TgtDB" Prompt "TgtDB" Default "edwdev" ParamType "0" ParamLength "0" ParamScale "0" END DSSUBRECORD MetaBag... (6 Replies)
Discussion started by: ukatru
6 Replies

3. UNIX for Dummies Questions & Answers

how to use vi to replace specific line of text only

hi all, i am new bee to Unix. i know how to replace text for range of lines in vi for e.g. replace | with |||| for line 4 through 7 using vi : 4,7s/|/||||/g but i have to replace | with |||| only for line no 4, 7 and 10 using vi only!!! your help will be appreciated! thanks,... (4 Replies)
Discussion started by: pranav.pandya
4 Replies

4. UNIX for Dummies Questions & Answers

how to replace a text of line with a comment line

I want to replace this line : "test compare visible] true" and make it "#test compare visible] true". How can I do it ? And it should be checked in many sub folder files also. (6 Replies)
Discussion started by: manoj.b
6 Replies

5. Shell Programming and Scripting

sed to replace a line with 2 or more different lines in same file

i have something like this... cat filename.txt <complexType name="abc"> bklah vlah blah blha blha blah blha </complexType > <complexType name="def"> bklah vlah blah blha blha blah blha </complexType > . . .and so on.. its a very large file (11 Replies)
Discussion started by: vivek d r
11 Replies

6. Shell Programming and Scripting

How to replace a text containing new lines using sed or any other method?

Hi, i want to replace "Hi How are You when did you go to delhi" to "Hi How are you when did you come from delhi" in a file. Any idea how to do it? (2 Replies)
Discussion started by: abhitanshu
2 Replies

7. Shell Programming and Scripting

[sed] Replace one line with two lines

Literally cannot get this one, guys. Single line replacement is simple, but I am not understanding the correct syntax for including a new line feed into the substitution part. Here's what I got. (Cannot use perl) #!/bin/sh set -f #Start Perms export HOME=/home/test_user # End Perms... (6 Replies)
Discussion started by: Parallax
6 Replies

8. Shell Programming and Scripting

Search text and replace line next to it

I have a file which requires modification via a shell script. Need to do the following: 0. take input from user for new text. 1. search for a keyword in the file. 2. replace the line next to this to this keyword with user supplied input. for e.g., my file has the following text: (some... (7 Replies)
Discussion started by: chingupt
7 Replies

9. UNIX for Dummies Questions & Answers

Replace lines of two files by the corresponding line numbers.

I want to replace lines. The files 1 are (separated by \t) Gm01 phytozome9_0 three_prime_UTR 70641 70759 . - . ID=PAC:26323927.three_prime_UTR.1;Parent=PAC:26323927;pacid=26323927 Gm01 phytozome9_0 three_prime_UTR 90230 90692 . - . ... (1 Reply)
Discussion started by: grace_shen
1 Replies

10. Shell Programming and Scripting

How to find text and replace next line.?

Have multiple files with the same format and certain text is the same. Have specific text to search for and then need to replace the next line. Can search on the text DEVICE and multiple lines will be found. The line after each DEVICE line has {. Want to replace the line { with {-someadditiontext.... (2 Replies)
Discussion started by: bigdaddywags
2 Replies
ntextIndent(3tk)				       ntext Indentation for the Text Widget					  ntextIndent(3tk)

__________________________________________________________________________________________________________________________________________________

NAME
ntextIndent - ntext Indentation for the Text Widget SYNOPSIS
package require Tcl 8.5 package require Tk 8.5 package require ntext ?0.81? _________________________________________________________________ DESCRIPTION
The ntext package provides a binding tag named Ntext for use by text widgets in place of the default Text binding tag. Tk's text widget may be configured to wrap lines of text that are longer than the width of the text area, a feature that is familiar from text editors and word processors. A complete line of text (delimited by newlines, or by the beginning or end of the document) is called a "logical line". When a logical line is wrapped onto more than one line of the display area, these fragments of the logical line are called "display lines". If a logical line begins with whitespace, then wrapped display lines begin further to the left than the first display line, which can make the text layout untidy and difficult to read. The Ntext binding tag provides facilities so that a text widget in -wrap word mode will automatically indent display lines (other than the first) to match the initial whitespace of the first display line. This indentation is available to text widgets only in -wrap word mode. CONFIGURATION OPTIONS
The behavior of Ntext may be configured application-wide by setting the values of a number of namespace variables: ::ntext::classicWrap o 0 - selects Ntext behaviour, i.e. display lines are indented to match the initial whitespace of the first display line of a logical line. No other action is required if this option, and the text widget's -wrap option, are set before any text is entered in the widget, and if text is entered and edited only by the mouse and keyboard. If, instead, text is manipulated by the script, or if the text widget's -wrap option or the value of ::ntext::classicWrap are changed while the widget holds text, then calls to ntext functions are needed to alter the indentation. See the section INDENTING DISPLAY LINES for detailed instructions. o 1 - (default value) selects classic Text behaviour, i.e. no indentation. Advanced Use ::ntext::newWrapRegexp o the value is a regexp pattern that determines the character of a logical line to which display lines other than the first will be aligned. The default value, [^[:space:]], ensures alignment with the first non-whitespace character. INDENTING DISPLAY LINES
To use Ntext 's display line indentation: [1] Set the variable ::ntext::classicWrap to 0 (default value is 1). This enables bindings that will preserve indentation whenever the user modifies the widget contents using the keyboard and mouse. If the widget already holds text, call ::ntext::wrapIndent to ini- tialise indentation. Further instructions apply if the program changes the widget's contents, wrap configuration, or indent configuration. [2] The program can change the text contents, e.g. by the .text insert command. Such a change does not trigger a window binding, so the program should explicitly call function ::ntext::wrapIndent after inserting text. [3] Auto-indentation occurs only if the widget is in -wrap word mode. If the program changes to or from -wrap word when the widget is not empty, it should call ::ntext::wrapIndent to format the widget's text. [4] If indentation is used, and then switched off by setting ::ntext::classicWrap to 1, call ::ntext::wrapIndent to remove indentation. FUNCTIONS
::ntext::wrapIndent textWidget ?index1? ?index2? o Adjust the indentation of a text widget. Different cases are discussed below. ::ntext::wrapIndent textWidget o Adjust the indentation of all the text in text widget textWidget. ::ntext::wrapIndent textWidget index1 o Adjust the indentation of a single logical line of a text widget - the line of textWidget that contains the index index1. ::ntext::wrapIndent textWidget index1 index2 o Adjust the indentation of a range of logical lines of a text widget - the lines of textWidget that contain indices index1 to index2. Usage o ::ntext::wrapIndent should be called only if the script changes the widget's contents or display properties. If the contents of the widget have been modified by the keyboard or mouse, it is not necessary for the script to call ::ntext::wrapIndent because the appropriate calls are made automatically by the Ntext bindings. o The script should normally call ::ntext::wrapIndent if, for example, the script changes one of the following when the widget is not empty: the value of ::ntext::classicWrap, or the widget's -wrap status, or the widget's tab spacing, or the font size, or the wid- get's contents. o A call of the form ::ntext::wrapIndent textWidget will always suffice, but if changes are needed only to certain lines, it is more efficient to specify those lines with the optional arguments ?index1?, ?index2?. o If the widget is in -word wrap mode, and if ::ntext::classicWrap is set to 0, ::ntext::wrapIndent will apply indentation to the log- ical lines within the range specified by the function's arguments. o In other cases, i.e. if the widget is in -word char or -word none mode, or if ::ntext::classicWrap is set to 1, ::ntext::wrapIndent will remove the indentation of the logical lines within the range specified by the function's arguments. EXAMPLES
To switch on Ntext 's indentation and use it in widget .t: package require ntext set ::ntext::classicWrap 0 text .t -wrap word bindtags .t {.t Ntext . all} To decide later to switch off Ntext 's indentation: set ::ntext::classicWrap 1 ::ntext::wrapIndent .t To decide later to switch Ntext 's indentation back on: set ::ntext::classicWrap 0 ::ntext::wrapIndent .t 1.0 end To inject some text into the widget: set foo [.t index end] .t insert end {This line was added by the script, not the keyboard!} ::ntext::wrapIndent .t $foo end To switch to -wrap char mode: .t configure -wrap char ::ntext::wrapIndent .t SEE ALSO
bindtags, ntext, re_syntax, regexp, text KEYWORDS
bindtags, re_syntax, regexp, text ntext 0.81 ntextIndent(3tk)
All times are GMT -4. The time now is 07:58 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy