grep uses regexes, not globs, with slightly different meanings. In glob, * means 'zero or more characters', in regex, it means 'zero or more of the previous character'.
So something* in regex terms would match something, somethingg, somethingggggggggggggggggggggg, somethin, but not somethina.
In regex, ? means "zero or one of the previous character" while . means "any character". You can combine the two as .? to mean "zero or one of any character" for example.
So try grep 'sample.txt' to match sampleatxt, samplebtxt, samplectxt, etc.
"grep uses regexes, not globs" is this mean extended regular expression is used by grep?
and globs means basin regular expression?
many thanks
samad
--- Post updated at 05:52 AM ---
Quote:
Originally Posted by Corona688
grep uses regexes, not globs, with slightly different meanings. In glob, * means 'zero or more characters', in regex, it means 'zero or more of the previous character'.
So something* in regex terms would match something, somethingg, somethingggggggggggggggggggggg, somethin, but not somethina.
In regex, ? means "zero or one of the previous character" while . means "any character". You can combine the two as .? to mean "zero or one of any character" for example.
So try grep 'sample.txt' to match sampleatxt, samplebtxt, samplectxt, etc.
but something* match "somethinga" that a in somethinga isn't previous character!
--- Post updated at 06:10 AM ---
Quote:
Originally Posted by Corona688
grep uses regexes, not globs, with slightly different meanings. In glob, * means 'zero or more characters', in regex, it means 'zero or more of the previous character'.
So something* in regex terms would match something, somethingg, somethingggggggggggggggggggggg, somethin, but not somethina.
In regex, ? means "zero or one of the previous character" while . means "any character". You can combine the two as .? to mean "zero or one of any character" for example.
So try grep 'sample.txt' to match sampleatxt, samplebtxt, samplectxt, etc.
you say " but not somethina" this is incorrect because the something* match somethina.
I'm trying to figure out how to build a small shell script that will find old .shtml files in every /tgp/ directory on the server and delete them if they are older than 10 days...
The structure of the paths are like this:
/home/domains/www.domain2.com/tgp/
/home/domains/www.domain3.com/tgp/... (1 Reply)
what will the cmd below do?
ls *.3
1 members mentions that to seek all permutations and combinations of the mp3 extension ill have to use curly braces, {} and not, .
what then will do? (13 Replies)
How can
grep G.*schema
give me the result: ${Gacntg_dt}""'"'
doesn't G.*schema say give me an unlimited number of characters between G and schema?
:confused: (3 Replies)
i have got heaps of files (.pdf, .txt and .doc) files in one folder, i am making a program in PERL that helps me find the files i want easier using shell wildcard,
something like this!!
print "Enter a pattern: (must be in )";
$input = <STDIN>;
if (The input is in and valid wildcard... (3 Replies)
Hi,
I'm on a Linux machine with a bash shell. I have some apache logs from where I want to extract the lines that match this pattern :
"GET /dir1/dir2/dir3/bt_sx.gif HTTP/1.1"
but where "/dir1/dir2/dir3/bt_sx" may vary , so I would like to grep something like
cat apache.log | grep "\"GET... (2 Replies)
How can i grep for a pattern with wildcard using grep?
I want to identify all the lines that start with SAM and end in .PIPE
IN.TXT
SAM_HEADER.PIPE
SAM_DETAIL.PIPE
SAM_INVOICE.PIPE
Can i do something like
grep SAM*.PIPE IN.TXT (2 Replies)
GNU grep with Oracle Linux 6.3
I want to grep for strings starting with the pattern ora and and having the words r2j in it. It should return the lines highlighted in red below.
But , I think I am not using wildcard for multiple characters correctly.
$ cat someText.txt
ora_pmon_jcpprdvp1... (3 Replies)
CD_numb is AM017
this code:
set the_Firstcom_CD to (do shell script "ls -d '/volumes/audioNAS/Firstcom/Access Music/' ") & CD_numb
gives me this:
"/volumes/audioNAS/Firstcom/Access Music/AM017"
the item I am looking for is AM017Q.
I can get the "*" syntax right so it never finder... (7 Replies)
Hello All,
I hope this is the right area. If not, Kindly let me know and I will report in the appropriate spot.
I am needing to find a search pattern that will make the * act as Wildcard in the search pattern instead of being literal.
The example I am using is bzgrep "to=<*@domain.com>"... (5 Replies)
I wish to check if my file has a line that does not start with '#' and has
1. Listen and 2. 443
echo "Listen 443" > test.out
grep 'Listen *443' test.out | grep -v '#'
Listen 443
The above worked fine but when the entry changes to the below the grep fails... (2 Replies)