You can do that with sed and its s (substitute) command.
For example the following provides a good match:
The delimiter / must not occur in the strings (otherwise another character can be taken).
Two parts of the search expression are in \( \) and can be put back by \1 and \2.
The .* (everything) in between is replaced by the new text.
hi,
i've found a few examples of scripts to do this but for some reason can't get them to work properly.
basically i have some dirs with a few hundred files mixed in with a bunch of other files that were made with a typo in part of them.
long-file-names-tyo-example.ext
want to be able... (2 Replies)
Hi,
I need to replace the string 'abcd' with 'xyz' in a file sample.xml
This sample.xml is also present in the subdirectories of the current directory.
Eg,
If I am in /user/home/
the sample.xml if present in
/user/home/
/user/home/folder1/
/user/home/folder2/... (3 Replies)
Hi,
I have many files scattered in all different folders. I want to replace the text within all the files using a single command ( awk, sed...) Is it possible?
example
find all the files in which there is text "memory" and replace it with "branded_memories".
the files can be at the... (2 Replies)
Hi guys,
say I have a few files in a directory (58 text files or somthing)
each one contains mulitple strings that I wish to replace with other strings
so in these 58 files I'm looking for say the following strings:
JAM (replace with BUTTER)
BREAD (replace with CRACKER)
SCOOP (replace... (19 Replies)
HI,
I have some csv files with mutiple extensions, I want to remove all the extensions and keep only the .csv extension.
anybody can suggest me how to do this.
source files
1.txt.csv.txt.csv.csv.txt.csv
2.csv.txt.csv.txt.csv.txt
target
1.csv
2.csv
--Wang (1 Reply)
Platform: Oracle Linux 6.3
From a log file, I want to grep all lines with the pattern "TNS-" but I want to skip those with the pattern "TNS-12514" . How can I do this ? (3 Replies)
Hello all,
I have since given up trying to figure this out and used sed instead, but I am trying to understand awk and was wondering how someone might do this in awk.
I am trying to match on the first field of a specific file with the first field on multiple files, and append the second field... (2 Replies)
I have 4000 files like
$cat clus_grp_seq10_g.phy
18 1002
anig_OJJ65951_1 ATGGTTTCGCAGCGTGATAGAGAATTGTTTAGGGATGATATTCGCTCGCGAGGAACGAAGCTCAATGCTGCCGAGCGCGAGAGTCTGCTAAGGCCATATCTGCCAGATCCGTCTGACCTTCCACGCAGGCCACTTCAGCGGCGCAAGAAGGTTCCTCG
aver_OOF92921_1 ... (1 Reply)
Im having an issue when trying to replace the first column with a new set of values in multiple files. The results from the following code only replaces the files with the last set of values in val.txt. I want to replace all the files with all the values.
for date in {1..31}
do
for val in... (1 Reply)
Discussion started by: ncwxpanther
1 Replies
LEARN ABOUT NETBSD
qsubst
QSUBST(1) BSD General Commands Manual QSUBST(1)NAME
qsubst -- query-replace strings in files
SYNOPSIS
qsubst str1 str2 [flags] file [file [...]]
DESCRIPTION
qsubst reads its options (see below) to get a list of files. For each file on this list, it then replaces str1 with str2 wherever possible
in that file, depending on user input (see below). The result is written back onto the original file.
For each potential substitution found, the user is prompted with a few lines before and after the line containing the string to be substi-
tuted. The string itself is displayed using the terminal's standout mode, if any. Then one character is read from the terminal. This is
then interpreted as follows (this is designed to be like Emacs' query-replace-string):
space Replace this occurrence and go on to the next one.
. Replace this occurrence and don't change any more in this file (i.e., go on to the next file).
, Tentatively replace this occurrence. The lines as they would look if the substitution were made are printed out. Then another
character is read and it is used to decide the result as if the tentative replacement had not happened.
n Don't change this one; just go on to the next one.
^G Don't change this one or any others in this file, but instead simply go on to the next file.
! Change the rest in this file without asking, then go on to the next file (at which point qsubst will start asking again).
? Print out the current filename and ask again.
The first two arguments to qsubst are always the string to replace and the string to replace it with. The options are as follows:
-w The search string is considered as a C symbol; it must be bounded by non-symbol characters. This option toggles. ('w'
for 'word'.)
-!
-go
-noask Enter ! mode automatically at the beginning of each file.
-nogo
-ask Negate -go, that is, ask as usual.
-cN (Where N is a number.) Give N lines of context above and below the line with the match when prompting the user.
-CAN (Where N is a number.) Give N lines of context above the line with the match when prompting the user.
-CBN (Where N is a number.) Give N lines of context below the line with the match when prompting the user.
-f filename The filename argument is one of the files qsubst should perform substitutions in.
-F filename qsubst reads filename to get the names of files to perform substitutions in. The names should appear one to a line.
The default amount of context is -c2, that is, two lines above and two lines below the line with the match.
Arguments not beginning with a - sign in the options field are implicitly preceded by -f. Thus, -f is really needed only when the file name
begins with a - sign.
qsubst reads its options in order and processes files as it gets them. This means, for example, that a -go will affect only files named
after the -go.
The most context you can get is ten lines each, above and below.
str1 is limited to 512 characters; there is no limit on the size of str2. Neither one may contain a NUL.
NULs in the file may cause qsubst to make various mistakes.
If any other program modifies the file while qsubst is running, all bets are off.
AUTHORS
der Mouse <mouse@rodents.montreal.qc.ca>
BSD September 4, 1999 BSD