Unless a non-standard shell option is enabled (e.g. bash's dotglob), -name . is always false and pruning never occurs.
Regards,
Alister
Hi Alister,
I don't think you noticed the ! in the command bipinajith posted:
For the given command the ! -name . is a no-op; all subdirectories not named "." will be pruned but "." won't appear in the list. But for the command:
it allows files in the current directory to be evaluated while pruning all subdirectories.
This User Gave Thanks to Don Cragun For This Post:
I need to perform a non-recursive find in Unix. Sounds simple, but it doesn't actually work. The command ALWAYS searches through the subdirectories.
Any ideas? I am on DEC Unix :-( (3 Replies)
Hello, I am trying to search a directory for all files matching "G*" without looking in sub-directories "success" and "error". I've searched this forum and found the following syntax, but can't make it work:
find . \( ! -name success -prune -name error -prune \) -type f -name "G*"
Have... (6 Replies)
Hi everyone,
I'm using a recursive find (you know the type, find . -name qwert*) to find a set of files. However, because I'm new to the system and there is not much documentation about these particular files I'm trying to find them using this recursive find.
I started off at the location... (3 Replies)
I HAVE A TEXT FILE CONTAINING THE VALUES
1.CPP
2.CPP
3.CPP
4.CPP
5.CPP
6.CPP
I WANT TO TAKE EACH .CPP AND USE THE FIND COMMAND TO FIND THE LATEST VERSION OF THE FOLDER IN WHICH IT IS PRESENT.
HOW DO I IMPLEMENT IT IN A WHILE LOOP
I TRIED SOMETHING LIKE THIS
WHILE
CAT... (3 Replies)
Hi,
I have question is related to find command. I want to find command should search in current folder only not recursive mode(sub-folders).
I found a one way of,
find . \( -name success -prune \) -o -name "Rajini*"
How ever, my current folder is having lots sub-folders and am not... (7 Replies)
find -type d -name "TC_*" | sort
That's what I have so far... it finds the appropriate directories and then sorts them. But, when it comes to nested subdirectories, it only sorts relative to the first subdirectory. I want it to sort based on the directory at the end of the path. Does anyone know... (3 Replies)
I was working on a shell script and found that the find command took too long, especially when I had to execute it multiple times. After some thought and research I came up with two functions.
fileScan()
filescan will cd into a directory and perform any operations you would like from within... (8 Replies)
Hi all,
I am currently writing a find-and-remove kind of script that is to be used for Solaris and Linux.
Currently am using the find command below that I is in find only current directory (universal) | commandlinefu.com
This however gives me the "ksh: /bin/find: arg list too long" error... (6 Replies)
Is there a way to use the find command to recursively scan directories for files greater than 1Gb in size and print out the directory path and file name only?
Thanks in advance. (6 Replies)
Hi All
I have a requirement to find the file that are most latest to be modified in each directory. Can somebody help with the command please?
E.g of the problem.
The directory A is having sub directory which are having subdirectory an so on.
I need a command which will find the... (2 Replies)
Discussion started by: sudeep.id
2 Replies
LEARN ABOUT DEBIAN
file::find::rule::procedural
File::Find::Rule::Procedural(3pm) User Contributed Perl Documentation File::Find::Rule::Procedural(3pm)NAME
File::Find::Rule::Procedural - File::Find::Rule's procedural interface
SYNOPSIS
use File::Find::Rule;
# find all .pm files, procedurally
my @files = find(file => name => '*.pm', in => @INC);
DESCRIPTION
In addition to the regular object-oriented interface, File::Find::Rule provides two subroutines for you to use.
"find( @clauses )"
"rule( @clauses )"
"find" and "rule" can be used to invoke any methods available to the OO version. "rule" is a synonym for "find"
Passing more than one value to a clause is done with an anonymous array:
my $finder = find( name => [ '*.mp3', '*.ogg' ] );
"find" and "rule" both return a File::Find::Rule instance, unless one of the arguments is "in", in which case it returns a list of things
that match the rule.
my @files = find( name => [ '*.mp3', '*.ogg' ], in => $ENV{HOME} );
Please note that "in" will be the last clause evaluated, and so this code will search for mp3s regardless of size.
my @files = find( name => '*.mp3', in => $ENV{HOME}, size => '<2k' );
^
|
Clause processing stopped here ------/
It is also possible to invert a single rule by prefixing it with "!" like so:
# large files that aren't videos
my @files = find( file =>
'!name' => [ '*.avi', '*.mov' ],
size => '>20M',
in => $ENV{HOME} );
AUTHOR
Richard Clamp <richardc@unixbeard.net>
COPYRIGHT
Copyright (C) 2003 Richard Clamp. All Rights Reserved.
This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
SEE ALSO
File::Find::Rule
perl v5.12.4 2011-09-19 File::Find::Rule::Procedural(3pm)