Re: Unix grep question
Paul Gilmartin wrote: On Tue, 12 Feb 2008 09:06:57 -0700, Steve Comstock wrote: From "Shell Script Programming in z/OS UNIX" (http://www.trainersfriend.com/UNIX_and_Web_courses/u515descr.htm): Bad URL. Might help to delimit it with blanks: ( http://www.trainersfriend.com/UNIX_and_Web_courses/u515descr.htm ): "-exec command \; - runs specified command; if command contains this string {}, the string is replaced by the found file" also, later... find . -name 'string' -exec grep -i fa {} \; If you're doing this, I'd suggest: find . -name 'string' -exec grep -i fa {} /dev/null \; ... to cause the filenames to appear in the output. -- gil Excellent suggestion, Paul. Thanks. Kind regards, -Steve Comstock The Trainer's Friend, Inc. 303-393-8716 http://www.trainersfriend.com z/OS Application development made easier * Our classes include + How things work + Programming examples with realistic applications + Starter / skeleton code + Complete working programs + Useful utilities and subroutines + Tips and techniques -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
Re: Unix grep question
On Tue, 12 Feb 2008 09:06:57 -0700, Steve Comstock wrote: > From "Shell Script Programming in z/OS UNIX" >(http://www.trainersfriend.com/UNIX_and_Web_courses/u515descr.htm): > Bad URL. Might help to delimit it with blanks: >( http://www.trainersfriend.com/UNIX_and_Web_courses/u515descr.htm ): >"-exec command \; - runs specified command; if command > contains this string {}, the string > is replaced by the found file" > >also, later... > > find . -name 'string' -exec grep -i fa {} \; > If you're doing this, I'd suggest: find . -name 'string' -exec grep -i fa {} /dev/null \; ... to cause the filenames to appear in the output. -- gil -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
Re: Unix grep question
On Tue, 12 Feb 2008 09:06:57 -0700, Steve Comstock wrote: > > find . -name 'string' -exec grep -i fa {} \; > >or > > grep -i fa $(find . -name 'in*') > >... > >generally the second is faster. > Yes, but it will likewise fail on the OP's ARG_MAX problem. Also will fail if any of the filenames contain metacharacters. One wishes for the GNU find's -print0 option coupled with their xargs's -0 option. -- gil -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
Re: Unix grep question
Luis M Martinez wrote: According to the link posted I'd use: find . -exec grep "www.athabasca" {} \; From your working Directory find /my_path -exec grep "www.athabasca" {} \; From whatever path I've never used the '{}' notation ... try first without the quotes. From "Shell Script Programming in z/OS UNIX" (http://www.trainersfriend.com/UNIX_and_Web_courses/u515descr.htm): "-exec command \; - runs specified command; if command contains this string {}, the string is replaced by the found file" also, later... find . -name 'string' -exec grep -i fa {} \; or grep -i fa $(find . -name 'in*') ... generally the second is faster. Kind regards, -Steve Comstock The Trainer's Friend, Inc. 303-393-8716 http://www.trainersfriend.com z/OS Application development made easier * Our classes include + How things work + Programming examples with realistic applications + Starter / skeleton code + Complete working programs + Useful utilities and subroutines + Tips and techniques -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
Re: Unix grep question
On Tue, 12 Feb 2008 07:38:28 -0600, Todd Burrell wrote: >I have a user that is using the GREP command in Unix. Apparently he is ITYM grep. >searching through an anourmous list of files, and he is exceeding the ARG_MAX >value for grep. Is there a way on the mainframe to raise this value? I have >looked through the manuals and I don't see any way to change this, but I >might have missed something. > find ... | xargs grep ... Hammer and file to fit. -- gil -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
Re: Unix grep question
Try this: ls -1 | xargs -i grep -l searchstring {} Of course, replace searchstring with whatever you are searching for. The option on ls is a one, not the letter L. The option on grep is the letter L. Darren -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
Re: Unix grep question
According to the link posted I'd use: find . -exec grep "www.athabasca" {} \; From your working Directory find /my_path -exec grep "www.athabasca" {} \; From whatever path I've never used the '{}' notation ... try first without the quotes. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
Re: Unix grep question
Best to use "grep" along with "find" for this kind of thing. See: http://www.athabascau.ca/html/depts/compserv/webunit/HOWTO/find.htm On Feb 12, 2008 7:38 AM, Todd Burrell <[EMAIL PROTECTED]> wrote: > Hello: > I have a user that is using the GREP command in Unix. Apparently he is > searching through an anourmous list of files, and he is exceeding the ARG_MAX > value for grep. Is there a way on the mainframe to raise this value? I have > looked through the manuals and I don't see any way to change this, but I > might have missed something. > Thanks > Todd Burrell > > -- > For IBM-MAIN subscribe / signoff / archive access instructions, > send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO > Search the archives at http://bama.ua.edu/archives/ibm-main.html > -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
Re: Unix grep question
Hello, Could you post your command and the error message an I can help you with the solution On most of the Unix distributions you have the limits on the file named "/usr/include/limits.h". I can'nt remember if USS have it. If you cann't defeat the limits ... then try with a small shellscript using awk (get_line() and close()) and reading the file names from an input file previously generated with the list of files to grep. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html