03-12-2020
Quote:
Originally Posted by
DanilOnTheSky
It worked, can you explain a little bit why?
Regards,
The caret sign (
^)means that the expression only matches text at the beginning of the line.
There already had be a space at the end.
These two measures make that a partial match will not work.
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
I want to list all files created in a day but it doesn't work
$ day=\'`date "+%b %d"`\'
$ echo $day
>>> 'Mar 12'
$ ll |grep $day
>>> can't open 12'
????? please help me (3 Replies)
Discussion started by: Medhi
3 Replies
2. UNIX for Advanced & Expert Users
I am doing "ps -f" to see my process.
but I get lines that one of it represents the ps command itself.
I want to grep it out using -v flag, but than I get another process that belongs to the GREP itself :
I would like to exclude
# ps -f
UID PID PPID C STIME TTY TIME CMD... (2 Replies)
Discussion started by: yamsin789
2 Replies
3. UNIX for Advanced & Expert Users
I want to search pattern in between two words in a file
so how to write query by using grep command??
Also want to get two words.. (2 Replies)
Discussion started by: ksr.test
2 Replies
4. UNIX for Advanced & Expert Users
In my file contains special characters,alphanumerics all thease characters
how to search the pattern between two strings that contains special characters
Ex: find pattern between allocation_map_128*2 to creative.clicks_allocate != KNULL
so there are special characters in my... (1 Reply)
Discussion started by: ksr.test
1 Replies
5. UNIX for Dummies Questions & Answers
Hi,
I am new to UNIX environment, to find a contents from a given files i have used the command "grep -l "<search word>" *.txt, it is given the file names which contains that particular word, but it is anyway to get entire details of the file .., i need the output like ls -ltr, filename... (3 Replies)
Discussion started by: subrahmaniank
3 Replies
6. UNIX for Dummies Questions & Answers
Hi guys, i wondering with any1 could help me with this.
I have this script will i need to "grep" an integer form a file x2. If the value is 0 then it's ok. But anything greater then 0, i'll ask the script to echo an error message. This is how the script looks like:
MESSAGEFILE=x2
STRING="0"
... (5 Replies)
Discussion started by: hanyou.lin
5 Replies
7. Shell Programming and Scripting
i want to search in the current directory all the files that contain one word for example "hello"
i want to achieve it with the grep command but not with the grep * (2 Replies)
Discussion started by: aintour
2 Replies
8. Shell Programming and Scripting
Hi, im taking an entry Unix class, and as part of my lab assignment I have to copy all files in the /home/david/lab3 directory that have the file extension .save to your lab3/temp directory. I'm having trouble getting the grep to do anything worth while
I've been trying to do:
cp... (6 Replies)
Discussion started by: Critical jeff
6 Replies
9. Shell Programming and Scripting
I have one text file, contains some values like <Q1:Name>1000000</Q1:Name>. I want to read the values and stores into an array for searching the each values into a file locations.
If I use this
find location |xargs grep -l "<Q1:Location>100000055042</Q1:Location>",I get the files, are having... (7 Replies)
Discussion started by: arindam guha
7 Replies
10. Shell Programming and Scripting
Hello,
I am running below command as root user
#nodetool cfstats tests | grep "Memtable switch count"
Memtable switch count: 12
Where as when I try to run same command as another user it gives different result.
#su -l zabbix -s /bin/bash -c "nodetool cfstats tests | grep "Memtable switch... (10 Replies)
Discussion started by: Pushpraj
10 Replies
GREP(1) General Commands Manual GREP(1)
NAME
grep, egrep, fgrep - search a file for a pattern
SYNOPSIS
grep [ option ] ... expression [ file ] ...
egrep [ option ] ... [ expression ] [ file ] ...
fgrep [ option ] ... [ strings ] [ file ]
DESCRIPTION
Commands of the grep family search the input files (standard input default) for lines matching a pattern. Normally, each line found is
copied to the standard output; unless the -h flag is used, the file name is shown if there is more than one input file.
Grep patterns are limited regular expressions in the style of ed(1); it uses a compact nondeterministic algorithm. Egrep patterns are full
regular expressions; it uses a fast deterministic algorithm that sometimes needs exponential space. Fgrep patterns are fixed strings; it
is fast and compact.
The following options are recognized.
-v All lines but those matching are printed.
-c Only a count of matching lines is printed.
-l The names of files with matching lines are listed (once) separated by newlines.
-n Each line is preceded by its line number in the file.
-b Each line is preceded by the block number on which it was found. This is sometimes useful in locating disk block numbers by con-
text.
-s No output is produced, only status.
-h Do not print filename headers with output lines.
-y Lower case letters in the pattern will also match upper case letters in the input (grep only).
-e expression
Same as a simple expression argument, but useful when the expression begins with a -.
-f file
The regular expression (egrep) or string list (fgrep) is taken from the file.
-x (Exact) only lines matched in their entirety are printed (fgrep only).
Care should be taken when using the characters $ * [ ^ | ? ' " ( ) and in the expression as they are also meaningful to the Shell. It is
safest to enclose the entire expression argument in single quotes ' '.
Fgrep searches for lines that contain one of the (newline-separated) strings.
Egrep accepts extended regular expressions. In the following description `character' excludes newline:
A followed by a single character matches that character.
The character ^ ($) matches the beginning (end) of a line.
A . matches any character.
A single character not otherwise endowed with special meaning matches that character.
A string enclosed in brackets [] matches any single character from the string. Ranges of ASCII character codes may be abbreviated
as in `a-z0-9'. A ] may occur only as the first character of the string. A literal - must be placed where it can't be mistaken as
a range indicator.
A regular expression followed by * (+, ?) matches a sequence of 0 or more (1 or more, 0 or 1) matches of the regular expression.
Two regular expressions concatenated match a match of the first followed by a match of the second.
Two regular expressions separated by | or newline match either a match for the first or a match for the second.
A regular expression enclosed in parentheses matches a match for the regular expression.
The order of precedence of operators at the same parenthesis level is [] then *+? then concatenation then | and newline.
SEE ALSO
ed(1), sed(1), sh(1)
DIAGNOSTICS
Exit status is 0 if any matches are found, 1 if none, 2 for syntax errors or inaccessible files.
BUGS
Ideally there should be only one grep, but we don't know a single algorithm that spans a wide enough range of space-time tradeoffs.
Lines are limited to 256 characters; longer lines are truncated.
GREP(1)