grep -l prints the file names so you can process them with xargs.
But xargs has a problem with space characters in file names. find -exec handles spaces well: grep -q suppresses output; the exit status decides on the following.
Probably all find versions cannot chain {} + queues so there is a need for a slower {} \;.
Many GNU utilities allow 0-byte terminated lines, so the following is fast and correct:
This User Gave Thanks to MadeInGermany For This Post:
Hi,
I would like to ask if there is any method to grep a chuck of lines based on the latest file in a directory.
E.g
Latest file in the directory:
Line 1: 532243
Line 2: 123456
Line 3: 334566
Line 4: 44567545
I wanted to grep all the line after line 2 i.e. Line 3 and line 4 and... (5 Replies)
I have to grep on a few words in a file and then display the line containing those words and the line above it.
For ex -
File1.txt contains...
abc xyz abc
This is a test
Test successful
abc xyz abc
Just a test
Test successful
I find the words 'Test successful' in the file... (6 Replies)
Hi Friends,
I have a file which has many of the statements like below
******** MAKING > noun1 < cg_all
statements
statements
statements
********* MAKING > noun2 < cg_all
statements
statements
statements
********* MAKING > noun3 < all
statements
statements
statements
I would... (3 Replies)
Hi,
I have one file, say file 1, that has data like below where 19900107 is the date,
19900107 12 144 129 0.7380047
19900108 12 168 129 0.3149017
19900109 12 192 129 3.2766666E-02
... (3 Replies)
Sample File
abc
xyz
def
abc
ggh
abc
xyz
I just created a sample file above to show what I need. I need to grep two lines. e.g abc and xyz(only if they are one after the other) so output would be
abc
xyz
abc
xyz
(note abc followed by ggh line would not come out in the output). I... (9 Replies)
Hello. How does one grep lines in a file that have only one field?
AAA BBB CCC
DDD
AAA CCC
Is is possible to grep "DDD" becuase it has only one field?
Thanks.
---------- Post updated at 08:03 PM ---------- Previous update was at 07:25 PM ----------
I found it, thank you!
awk 'NF... (2 Replies)
Hi guys,
This is probably very easy but I've no idea how to pull this out.
Basically, I need to find errors into a very large logfile. When you grep the ID, the output is like this:
+- Type: 799911 Code: Ret: 22728954 Mand: X Def: Des: UserDes: SeqNo: 2
+- Type: 799911 Code: Ret:... (5 Replies)
Hi all,
I have two files.
File A looks like this:
abkhasian com|hum
accent com|com|com|com|sta
acceptation act|com|sta
adventures com|hum
adversity com|hum|hum
and File B looks like this:
adventure
adventures
adversary
Adverse
adversity
I want to print those lines in File A... (9 Replies)
Discussion started by: owwow14
9 Replies
LEARN ABOUT REDHAT
lsdiff
LSDIFF(1)LSDIFF(1)NAME
lsdiff - show which files are modified by a patch
SYNOPSIS
lsdiff [-n] [-p n] [--strip=n] [--addprefix=PREFIX] [-s]
[-i PATTERN] [-x PATTERN] [-v] [file...]
lsdiff {--help | --version | --filter ... | --grep ...}
DESCRIPTION
List the files modified by a patch.
You can use both unified and context format diffs with this program.
OPTIONS -n Display the line number that each patch begins at. If verbose output is requested, each hunk of each patch is listed as well.
For each file that is modified, a line is generated containing the line number of the beginning of the patch, followed by a Tab
character, followed by the name of the file that is modified. If -v is given, following each of these lines will be one line for
each hunk, consisting of a Tab character, the line number that the hunk begins at, another Tab character, the string ``Hunk #'', and
the hunk number (starting at 1).
-p n When matching, ignore the first n components of the pathname.
--strip=n
Remove the first n components of the pathname before displaying it.
--addprefix=PREFIX
Prefix the pathname with PREFIX before displaying it.
-s Show file additions, modifications and removals. A file addition is indicated by a ``+'', a removal by a ``-'', and a modification
by a ``!''.
-i PATTERN
Include only files matching PATTERN.
-x PATTERN
Exclude files matching PATTERN.
-v Verbose output.
--help Display a short usage message.
--version
Display the version number of lsdiff.
--filter
Behave like filterdiff(1) instead.
--grep Behave like grepdiff(1) instead.
SEE ALSO filterdiff(1), grepdiff(1)EXAMPLES
To sort the order of touched files in a patch, you can use:
lsdiff patch | sort -u |
xargs -rn1 filterdiff patch -i
To show only added files in a patch:
lsdiff -s patch | grep '^+' |
cut -c2- | xargs -rn1 filterdiff patch -i
To show the headers of all file hunks:
lsdiff -n patch | (while read n file
do sed -ne "$n,$(($n+1))p" patch
done)
AUTHOR
Tim Waugh <twaugh@redhat.com>.
patchutils 13 May 2002 LSDIFF(1)