From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-1.0 required=5.0 tests=MAILING_LIST_MULTI, RCVD_IN_DNSWL_NONE autolearn=ham autolearn_force=no version=3.4.2 Received: from primenet.com.au (ns1.primenet.com.au [203.24.36.2]) by inbox.vuxu.org (OpenSMTPD) with ESMTP id 33b259bf for ; Mon, 16 Dec 2019 22:45:42 +0000 (UTC) Received: (qmail 11321 invoked by alias); 16 Dec 2019 22:45:35 -0000 Mailing-List: contact zsh-users-help@zsh.org; run by ezmlm Precedence: bulk X-No-Archive: yes List-Id: Zsh Users List List-Post: List-Help: List-Unsubscribe: X-Seq: 24557 Received: (qmail 27980 invoked by uid 1010); 16 Dec 2019 22:45:35 -0000 X-Qmail-Scanner-Diagnostics: from ny007.relay.arandomserver.com by f.primenet.com.au (envelope-from , uid 7791) with qmail-scanner-2.11 (clamdscan: 0.102.1/25663. spamassassin: 3.4.2. Clear:RC:0(172.96.188.169):SA:0(-2.0/5.0):. Processed in 1.448485 secs); 16 Dec 2019 22:45:35 -0000 X-Envelope-From: zsh@goots.org X-Qmail-Scanner-Mime-Attachments: | X-Qmail-Scanner-Zip-Files: | Received-SPF: pass (ns1.primenet.com.au: SPF record at _ny-spf.arandomserver.com designates 172.96.188.169 as permitted sender) To: Zsh Users From: Nick Cross Subject: Glob and grep Message-ID: <15c62c86-5b55-e248-725f-4ecbfe73822d@goots.org> Date: Mon, 16 Dec 2019 22:44:50 +0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Firefox/68.0 Thunderbird/68.2.2 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-GB Content-Transfer-Encoding: 7bit X-AuthUser: goots@goots.org X-Originating-IP: 172.96.184.4 X-SpamExperts-Domain: ams203.hawkhost.com X-SpamExperts-Username: relay Authentication-Results: arandomserver.com; auth=pass (login) smtp.auth=relay@ams203.hawkhost.com X-SpamExperts-Outgoing-Class: unsure X-SpamExperts-Outgoing-Evidence: Combined (0.58) X-Recommended-Action: accept X-Filter-ID: Mvzo4OR0dZXEDF/gcnlw0c2Pj46HODYmpAMVAv0J1pOpSDasLI4SayDByyq9LIhVR6SnC4iFQqVY GGIEfY+DUkTNWdUk1Ol2OGx3IfrIJKywOmJyM1qr8uRnWBrbSAGDMwQS+ztYDgzL97698WyXCLhh 7ygbFjwra07pb0zfwJxSiSwv0D6LkaKjZBmVM9RNZfHZrMQ8Ke0Z8pjKFUegibQrHWZPpqYwb4n/ 5SxQwXAlwKhAEGVwhQsL2SvUkQCljEekZ1w6js9KEGCkjNjGdZJzkFlZvHNn2w+r+PRLc+x6BTXs FxcSzhpFHKuVDd8SMEM4B92VJbZIHVTKWs4TQz48H2gdqxP0tgYUAZMJStGQVyADaS6UpCBADjTx teudzGmFyHEHavGcCg5H2y9jZbbclY/iYAq8NV7Yhw6jIM6FoLZMmkWsaurVZfvqROaDnDtHb8z5 dpPkEuJ8SnwqlWsfWqli0SqjE5zw8iWB9wzojwrQf+cnZi1Licr32S7ge2C0W87Jhjru7ci3JCpK RS2MRtGsUe8RKcyrMsa6VWi05aNHu9VCJ2sFLFRRTpVf++DuIQUs/5JJj4C/n4CILh87rKJqRmO4 d5utuhH9rI5/ywntMju+m9p2D/CkTLLw6K1DXwbl6ku1uQNpDdwyyiOeHOegLr2cJU7TU6bwpD/L 6RHDzOaNzElaPT3rpaXKGDrqCzk67NjEmDDlq0jF4yTqN5CC/h+Bl2d5uMEDtNQ3MN4OVGX45lcz iEKFCZOBnEw+d60sEkyHnU2JFGgcgHcFJY9QHf1HjjwbsCHg/F2aIrvHjZWN3MKFkx7o78OJFXlg yVhr+0VOdv5l4eWak1Pxh9J/ujum3wrxWD3xXXZ9Ugm/3CPmJEeB5sg/3HdE8Y/MiZSgbWlrEqx0 k93g5K9/HDdC9vYaWKjkKJr/0p9rG6uB6zCaE6aV6VilJ43eL56g8ucuQc4ZDgfki6DzDgsUlJr1 MBGjleO80AM/0JuAtNX5bHKP1Rj99zYfWRYUlqd9yir0ixHqX85lv1UwQw== X-Report-Abuse-To: spam@se001.arandomserver.com Hi, While I've been able to find varying amounts of information on the net I haven't found quite enough to get the following working. I would like to condense the following into a single grep / glob expression where I search recursively through a directory tree, ignoring any sub-trees starting with 'test' or 'target'. grep **/*.groovy | egrep -v "(/test/|/target/)" While I found information about ^(xxx) it wasn't clear how to have multiple expressions to ignore. Am I right in thinking I can add (.) to e.g. *.groovy to ensure I only search for files as well ? Thanks Nick