07-24-2009
Hi,
I am just trying to search for a word in a file and delete that complete line from the file if that word is present.
Cheers,
Shazin
---------- Post updated at 08:11 PM ---------- Previous update was at 08:06 PM ----------
Hi,
It can also be like this if we take it for a single file:
#!bin/sh
# The pattern that user want to add to the files
echo "Enter the pattern of the redirect"
read value
# check if the user has provided a valid pattern
if [-z "$value"] ; then
echo "You have not entered the pattern" ; exit 1
# If a pattern is entered by the User
# Searches the pattern and deletes the pattern if present in file (file 1) <filename 1>
mkdir /path/dred1
elif [grep "$value" <filename 1> > /path/dred1 && $? == 0] ; then
rm -r /path/dred1
echo "Pattern exist in <filename 1>"
sleep 1000
mkdir /path/olist
sed '/"$value"/d' <filename 1> > /path/olist
/path/olist > <filename 1>
rm -r /path/olist
echo "Pattern deleted"
else
rm -r /path/dred1
echo "Pattern does not exist in <filename 1>"
fi
fi
Please advise
Shazin
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
I have a problem in searching a specific pattern in c files.
My requirement:
I have to find all the division operator in all cfiles.
The problem is, the multi line comments and single line comments will also have forward slash in it.
Even after avoiding these comments also, if both... (6 Replies)
Discussion started by: murthybptl
6 Replies
2. UNIX for Dummies Questions & Answers
Hello All
I would like to search for files containing certain string pattern under all the directories under /vobs/vobname and print the output to a file in my home directory. How can I do this?
Note: /vobs/vobname conatins several directories.
Thank You in advance
newbetounix (1 Reply)
Discussion started by: intrigue
1 Replies
3. Shell Programming and Scripting
I want to delete lines like this
sed '/FROM_HERE/,/TO_HERE/d'
but I would like to *not* delete the second match, i.e. the TO_HERE line. How can I achieve this?
Thank you! (1 Reply)
Discussion started by: Ilja
1 Replies
4. Shell Programming and Scripting
Hello All,
i have to search a pattern in all the files in all subfolders that are present in current directory.
suppose i am in d1 directory and in that sd1,sd2,sd3 are subdirectories.
in
sd1 i have files f1,f2
sd2 i have files f3,f4
sd3 i have file f5
i have to list out all those... (4 Replies)
Discussion started by: ravi.sadani19
4 Replies
5. Shell Programming and Scripting
Hi All,
Please can someone assist in the script I have made that searches a pattern in a file and delete the whole line containing the pattern.
#!bin/sh
# The pattern that user want to add to the files
echo "Enter the pattern of the redirect"
read value
# check if the user has... (1 Reply)
Discussion started by: Shazin
1 Replies
6. Shell Programming and Scripting
Hi Gurus,
I have a file say for ex. file1 which has 3500 lines in it which are different account numbers and another file (file2) which has 230000 lines in it. I want to read all the lines in file1 and delete all those lines from file2 which has that same pattern as in file1. I am not quite... (4 Replies)
Discussion started by: toms
4 Replies
7. Shell Programming and Scripting
I have a situation where I need to search for multiple strings (error messages) such as 'aborted' 'file not found' etc in directory having logs. I have put all the error messages in a text file and using the command.
grep -f <textfile> <filetobegrepped>
I'm doing this thru a script where I... (5 Replies)
Discussion started by: bornon2303
5 Replies
8. Shell Programming and Scripting
I have a list of pattern in a file, I want each of these pattern been searched from 4 files. I was wondering this can be done in SED / AWK.
say my 4 files to be searched are
> cat f1
abc/x(12) 1
abc/x 3
cde 2
zzz 3
fdf 4
> cat f2
fdf 4
cde 3
abc 2... (6 Replies)
Discussion started by: novice_man
6 Replies
9. Shell Programming and Scripting
Hi
I am having a file like this
FILE1
#####################
C16ROTINV_
REFCLK_RXL
RXBCLK32_R
REFCLK_TXL
CLK8_TXLIN
RXBCLK32_R
DCLK_TXLIN
CLK32D_TXL
RXACLK32_R
##################### (3 Replies)
Discussion started by: jaita
3 Replies
10. UNIX for Dummies Questions & Answers
in a directory, I have some files(comma seperated) and some .gz files (each .gz file contain one file which again is comma seperated).
I want to search and write the names of all those files which contain any particular value (say 1150) at any specified field position(say 10th field).
How di I do... (1 Reply)
Discussion started by: Kumar Jivi
1 Replies
CG(1) CG(1)
NAME
cg - Recursively grep for a pattern and store it.
SYNOPSIS
cg [ -l ] | [ [ -i ] pattern [ files ] ]
DESCRIPTION
cg does a search though text files (usually source code) recursively for a pattern, storing matches and displaying the output in a human-
readable fashion. It is intended to give some of the functionaly of AT&T's cscope(1) tool, with the advantages of simplicity and not being
language-specific. The script will colorize output if configured as such.
It is typically run with a Perl regular expression to search for. The search can be made case insensitive by using the -i option. A list
of files may also be specified with an additional argument after the pattern. Put the files pattern in quotes to make it be matched by
Perl rather than by the shell. Running the script with no arguments will recall the results of the previous search. After the search,
entries found can be edited using the vg(1) script. The -l option shows the last log made.
SOME EXAMPLES
cg - alone recalls the previous search results.
cg -i pattern - search the default list of files for all files matching the pattern (and case-insensitively).
cg pattern '*.c' - search recursively for pattern in all *.c files. This automatically converts '*' to '.*' and '.' to '.' for you and
does a Perl pattern match on all files in the tree.
cg pattern *.c - search through the shell-expanded list of *.c files, so not done recursively (in other words, only the files your shell
pass to the script as arguments).
cg -l - show the last log made.
COMMAND-LINE OPTIONS
-i Do a case-insensitive search.
-l Show the last log made.
-p Toggle the default pager option. cg has a bulit-in pager function, which can be enabled or disabled by default (in .cgvgrc). If the
default is enabled, this option disables the pager; if the default is disabled, this option enables it.
-P Force the built-in pager to be disabled.
FILES
${HOME}/.cglast
Log file of the last search.
${HOME}/.cgvgrc
Per-user configuration file (if the defaults are not desireable).
${HOME}/.cgvg/*
Log files in $HOSTNAME.shell_pid form with the log of the last search.
SEE ALSO
vg(1), perl(1), find(1), grep(1), cscope(1)
AUTHOR
cg was written by Joshua Uziel <uzi@uzix.org>.
13 Mar 2002 CG(1)