how can i do it with unix command instead of manually editing file.
You seem to want to automatically update some sort of source-code. There is a specialised utility for that, it is called patch. In general it is fed a diff-output file and applies this diff to a sourcce file. This is the common way to update the source in a source-rpm to a higher version. The update will contain all the diffs which, when applied to an older version, give you the newer version. The man page of patch is rather exhaustive, so i suggest to read it carefully. If there are still questions please do not hesitate to raise them.
If you just want to replace fixed lines with a fixed text you could create a "changes-file" that might look like this:
i.e.
and feed it the following script, which just an infinitely dumb version of patch:
Notice that in this case the replacement text must not contain regexes, i.e. backreferences like \1
I hope this helps.
bakunin
Last edited by RudiC; 12-31-2018 at 06:07 AM..
Reason: "path" & "answer" typos
Hi,
I need a sed line that will find all lines that contain "<int key="NSWindowStyleMask">" and then replace the entire line (not just that one string) with "<int key="NSWindowStyleMask">8223</int>". It doesn't necessarily have to use sed as long as it gets the job done :)
Thanks (9 Replies)
I've got a file full of numbers, example:
cat test.file
60835287
0
51758036
40242437
0
32737144
0
24179513
0
4131489957
I want to replace those numbers (4 Replies)
I want to use sed to check if a short line is contained in the line after it, and if it is, to delete the short one. In other words, the input is...
This is a
This is a line
... and I want it to give me...
This is a line
Here's what I've tried so far: s/\(^.*\)\n\(\1.*$\)/\2/
Also,... (7 Replies)
Hello,
I have 8 lines containing these unique words in both files
645147468537
673962863160
673962864957
691717701950
707917019907
790085591726
792975507744
852174812753
file.dat.orig (has 1000 lines) and file.dat(has only 8 lines)
I want to replace those lines in file.dat.orig by... (1 Reply)
Hi everybody,
I am a newbie in shell scripting and I'm trying to write a script which reads lines from a file, searching some of this lines to change a specified number. I want to replace the line for another in the file.
I have to replace multiples lines, so I have a for. Now I am trying with... (1 Reply)
hey guys,
I tried searching but most 'search and replace' questions are related to one liners.
Say I have a file to be replaced that has the following:
$ cat testing.txt
TESTING
AAA
BBB
CCC
DDD
EEE
FFF
GGG
HHH
ENDTESTING
This is the input file: (3 Replies)
Hi, I am looking at modifiying a file but getting a bit lost with what i am trying to do.
I have the following file i need to alter. I want to search a list of files for the DEVSERIAL "0007862454" part but only the numbers. I then need to replace the line under DRIVES with the correct drive... (7 Replies)
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)
I need to replace the (*) in the fist of a list with numbers using sed for example >
this file contain a list
* linux
* computers
* labs
* questions
to >>>>
this file contain a list
1. linux
2. computers
3. labs
4. questions (7 Replies)
Hello,
I'm here again asking for your precious help.
I'm writing some code to convert csv files to html.
I want to highlight header and also I want to have rows with alternate colors.
So far this is my work###Let's format first line only with some color
cat $fileIN".tmp1" | sed '1... (7 Replies)
Discussion started by: emare
7 Replies
LEARN ABOUT DEBIAN
gendiff
GENDIFF(1) General Commands Manual GENDIFF(1)NAME
gendiff - utility to aid in error-free diff file generation
SYNOPSIS
gendiff <directory> <diff-extension>
DESCRIPTION
gendiff is a rather simple script which aids in generating a diff file from a single directory. It takes a directory name and a "diff-
extension" as its only arguments. The diff extension should be a unique sequence of characters added to the end of all original, unmodi-
fied files. The output of the program is a diff file which may be applied with the patch program to recreate the changes.
The usual sequence of events for creating a diff is to create two identical directories, make changes in one directory, and then use the
diff utility to create a list of differences between the two. Using gendiff eliminates the need for the extra, original and unmodified
directory copy. Instead, only the individual files that are modified need to be saved.
Before editing a file, copy the file, appending the extension you have chosen to the filename. I.e. if you were going to edit somefile.cpp
and have chosen the extension "fix", copy it to somefile.cpp.fix before editing it. Then edit the first copy (somefile.cpp).
After editing all the files you need to edit in this fashion, enter the directory one level above where your source code resides, and then
type
$ gendiff somedirectory .fix > mydiff-fix.patch
You should redirect the output to a file (as illustrated) unless you want to see the results on stdout.
SEE ALSO diff(1), patch(1)AUTHOR
Marc Ewing <marc@redhat.com>
4th Berkeley Distribution Mon Jan 10 2000 GENDIFF(1)