Sponsored Content
Top Forums Shell Programming and Scripting Bash script - How to update header of scripts in one pass - multiline search/replace Post 303038090 by jcdole on Saturday 24th of August 2019 12:47:56 PM
Old 08-24-2019
Quote:
Originally Posted by RudiC
Are those § and ɸ always in the same line? Is the first § at BOL, and ɸ at EOL?

To be more clear, on any files return by the command find :
1° The start pattern to search § is generaly at line 11 but should be more or less
2° The start pattern to search § is always on a new line starting with the comment character # which is followed by one ore more space or tab
3°) The end pattern to search ɸ is always the second one on the same line. Some thing like
^#.*ɸ.*ɸ.*#.*$
4°)Between the first pattern § and the last pattern ɸ there is at least 3 line :
Code:
#    §2017_08_23§                      #
#    ¨version:11-0-2¨                  #
#    ɸmodif_version:2-2-1ɸ             #

But it could be more
Code:
#    §2019_01_13§                      #
#                                      #
#                                      #
#    ¨version:1-0-0¨                  #
#                                      #
#                                      #
#    ɸmodif_version:0-0-3ɸ             #

I am looking for something like ( the following syntax is surely bad ) :
Set start and stop address; replace every things between start and stop including start and stop by the multi-line block of text :

Code:
sed '/§.*§ /,/ɸ.*ɸ/{s/.*/§2019_08_24§                      #\
#                                      #\
#    ¨version:3-0-0¨                  #
#                                      #
#    ɸmodif_version:1-1-1ɸ/}' some_file.sh

Or if the substitution text is in a bash variables :
Code:
REPLACE_VAR="$(cat <<-EOF §2019_08_24§                      #\
#                                      #\
#    ¨version:3-0-0¨                  #
#                                      #
#    ɸmodif_version:1-1-1ɸ EOF )"

Then :
Code:
sed '/§.*§ /,/ɸ.*ɸ/{s/.*/'"$REPLACE_VAR"'/}' some_file.sh

Any help is welcome
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

search and replace by bash

Hello everyone! I have a file: text.txt and also a list of replacement: replace.txt (tabbed) is isn\'t Mac Windows will won\'t \.\n \! <--- ! plus 2 spaces I want a script which will change text.txt as I made a script: #!/bin/bash echo Please input the file of... (2 Replies)
Discussion started by: Euler04
2 Replies

2. Shell Programming and Scripting

How to pass passwords to bash scripts?

I'm finding the following command very tedious to type in all the time, so I created a one line bash script called mount.bash with the following contents: mount -t cifs //mark/C\$ -o unc=//mark\\C$,ip=10.1.1.33,user=Administrator,password=$1 /mnt/mark I don't like the fact that I have to put... (5 Replies)
Discussion started by: siegfried
5 Replies

3. Shell Programming and Scripting

awk script to update header record

I am using HP UX and think this may be done with awk but bot sure. I have a file with a several header records and undeneath many detail records I need to put in the header record the number of detail records above this header record and number of detail records below this header record Header... (5 Replies)
Discussion started by: klut
5 Replies

4. Shell Programming and Scripting

bash search and replace

Hello all, I would like to replace some text that are forwarded in standard output from a script, then save the replaced text to a file. The text i would like to replace is in the form of: 1 some text 1.1 other text 1.2 more text 1.2.1 still more text i would like to replace 1 some... (5 Replies)
Discussion started by: dolphin06
5 Replies

5. Shell Programming and Scripting

Bash sed search and replace question

I have several files that I need to modify using sed. I know how to do that, but now a new requirement has come up. Now, I need to make changes to all lines that don't start with certain strings. For example, I need to change all lines except for lines that start with "a", "hello there",... (3 Replies)
Discussion started by: RickS
3 Replies

6. Shell Programming and Scripting

Search Replace and Update a file

hi, I am stuck at a place. Please help me out. Here is what i need to do. Search for a pattern in a propertyfile and change only at one occurance. I have these statements and assignment as a part of the propertyfile #Note : The Address should be replaced with actual address dynamically. ... (7 Replies)
Discussion started by: raghu_shekar
7 Replies

7. Shell Programming and Scripting

Can BASH handle mathematical operations and do a Search & Replace?

Hello, I have a bunch of xml file that needs to have edits made and I was wondering if a BASH script could handle it. I would like the script to look within my xml files and replace all integers greater than 5px with a value that is 25% smaller. For example, 100px = 75px. Since the integers... (12 Replies)
Discussion started by: jl487
12 Replies

8. UNIX and Linux Applications

Script to delete few rows from a file and then update header

HJKL1Name00014300010800000418828124201 L201207022012070228XAM 00000000031795404 001372339540000000000000000000000 COOLTV KEYA Zx00 xI-50352202553 00000000 00000000 G000000000000 00000000 ... (10 Replies)
Discussion started by: mirwasim
10 Replies

9. Shell Programming and Scripting

Pass arguments to bash script

myscript.sh #!/bin/bash ARGA=$1 if ; then echo "${ARGA}:Confirmed" else echo "${ARGA}:Unconfirmed" fi when I run the above script from the command line, i run it as: ./myscript.sh jsmith now some times, i need to runn it this way: (8 Replies)
Discussion started by: SkySmart
8 Replies

10. UNIX for Beginners Questions & Answers

awk script to extract a column, replace one of the header and replace year(from ddmmyy to yyyy)

I have a csv which has lot of columns . I was looking for an awk script which would extract a column twice. for the first occurance the header and data needs to be intact but for the second occurance i want to replace the header name since it a duplicate and extract year value which is in ddmmyy... (10 Replies)
Discussion started by: Kunalcurious
10 Replies
All times are GMT -4. The time now is 09:56 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy