04-26-2004
Losing filename in grep output
I have the following line in a script that searches files in several directories and shows the search results on the screen.
ls "$path" | xargs cat | tr -s " " | fgrep -i "$search_arg"
But, because I'm also using CAT and TR, the output from the search does not display the name of the file that the results came from. I need to show the file name, either on the same line of ouput, or preceding it.
I can get the filename if I remove CAT and TR, but I need to use TR to strip redundant blank spaces between words that would otherwise cause the search to fail (unless my search string also contained the same number of spaces, which wouldn't be possible to predict).
Anyone know how I can get the file name, or if there's a search command that ignores redundant spaces? We use the Korn shell.
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Hello,
I have over 200 files and some of them have the string like "John price $200". I would like to grep the string. Then output the filename which found the string.
I have the following script, but it ONLY output the string
echo Please input list file name:
read listn
for file in `cat... (3 Replies)
Discussion started by: happyv
3 Replies
2. Shell Programming and Scripting
Hi,
I have a question on bash. Basically I would like to print a file name using bash. I am actually trying to grep a particular character in sequential files.
I have alot files such that a.txt, b.txt,c.txt...etc.
If I found a certain character, I would print that particular filename.
I... (5 Replies)
Discussion started by: ahjiefreak
5 Replies
3. UNIX for Dummies Questions & Answers
Hi all,
I am trying to zgrep / grep list of files so that it displays only the matching filename:line number and does not display the whole line, like:
(echo "1.txt";echo "2.txt") | xargs zgrep -no STRING
If I use -o option, it displays the matching STRING and if not used, displays the... (3 Replies)
Discussion started by: vvaidyan
3 Replies
4. Shell Programming and Scripting
Hi all
i'm new in KSH,
i want to write a script to grep a logs files and redirecting the result into a relative subdirectory/file.txt that must be created near to each log file
my begin script is :
find ./logs -type f -name "*.log" -exec grep error {} \;
how i can perform that modest... (10 Replies)
Discussion started by: rambler
10 Replies
5. Shell Programming and Scripting
Explain this?
$ ls | grep -e "crd\|cs"
crd
cs
$ CLONES=`ls | grep -e "crd\|cs"`;echo $CLONES;
crd cs
$ CLONES=`ls | grep -e "crd\|cs"`;echo "$CLONES";
crd
cs (1 Reply)
Discussion started by: blasto333
1 Replies
6. Shell Programming and Scripting
Hi All,
Can you please help me.
The situation is like this. There are many different file name in this directory.
I have to grep all the file that the name start with "PTWO" and rename it to COM with the current date.
This is the script that I have done and it hit an... (16 Replies)
Discussion started by: badbunny9316
16 Replies
7. Shell Programming and Scripting
Hey guys,
here is my code:
#!/bin/bash
filter=('ubb' 'um2' 'uuu' 'uvv' 'uw1' 'uw2' 'uwh')
let num=`ls -l | grep 'sk' | wc -l`
read -a lines <<< `ls -l | grep 'sk' | awk '{print $8}'`
let finum=${#fi}
for ((i=1;i<=$num;i++))
do
for ((c=4;c<6;c++))
... (2 Replies)
Discussion started by: jkobori
2 Replies
8. Shell Programming and Scripting
Hi,
Can anyone let me know what is difference between
grep .* foo.c
grep '.*' foo.c
I am not able to understand what is exact difference.
Thanks in advance (2 Replies)
Discussion started by: SasDutta
2 Replies
9. UNIX for Dummies Questions & Answers
There is a file name list_filenames.dat, this has all the list of all files I need to encrypt, I did not understand what the following syntax is doing:
grep -s "^$1" list_filenames.dat, when I manually run this command it just returns all the lines, what is the usage of this ? can someone... (4 Replies)
Discussion started by: okkadu
4 Replies
10. Shell Programming and Scripting
I call my bash shell script "test.sh" and pass "admin_usr.txt" as an argument like below.
./test.sh admin_usr.txt
Inside the "test.sh" i wish to check if the filename passed "admin_usr.txt" i.e "$1" contains the string "admin" or not ... which in this case it does.
Note: I do not wish to... (5 Replies)
Discussion started by: mohtashims
5 Replies
CAT(1) FSF CAT(1)
NAME
cat - concatenate files and print on the standard output
SYNOPSIS
cat [OPTION] [FILE]...
DESCRIPTION
Concatenate FILE(s), or standard input, to standard output.
-A, --show-all
equivalent to -vET
-b, --number-nonblank
number nonblank output lines
-e equivalent to -vE
-E, --show-ends
display $ at end of each line
-n, --number
number all output lines
-s, --squeeze-blank
never more than one single blank line
-t equivalent to -vT
-T, --show-tabs
display TAB characters as ^I
-u (ignored)
-v, --show-nonprinting
use ^ and M- notation, except for LFD and TAB
--help display this help and exit
--version
output version information and exit
With no FILE, or when FILE is -, read standard input.
AUTHOR
Written by Torbjorn Granlund and Richard M. Stallman.
REPORTING BUGS
Report bugs to <bug-coreutils@gnu.org>.
COPYRIGHT
Copyright (C) 2002 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICU-
LAR PURPOSE.
SEE ALSO
The full documentation for cat is maintained as a Texinfo manual. If the info and cat programs are properly installed at your site, the
command
info cat
should give you access to the complete manual.
cat (coreutils) 4.5.3 February 2003 CAT(1)