Sponsored Content
Top Forums Shell Programming and Scripting Maxdepth option of find command not working Post 302942093 by TomG on Friday 24th of April 2015 07:25:21 AM
Old 04-24-2015
Quote:
Originally Posted by Don Cragun
The find -depth primary produces a post-order walk of the file hierarchy instead of the default pre-order walk; it has no effect on how deep find goes as it walks the hierarchy. To get what TomG requested, just using standard find primaries, try:
Code:
find . \( -type d ! -name . -prune \) -o \( -type f -size 0 -print \)

or if the name of the directory being searched was specified by a variable:
Code:
find "$dir" \( -type d ! -name "$dir" -prune \) -o \( -type f -size 0 -print \)


Hi Don,

Can you please tell me why -o is used. I am confused,because both conditions in the brackets have to be satisfied right. So can we use an 'and' condition.

Thank You
 

10 More Discussions You Might Find Interesting

1. Solaris

Why does the 'ps' command with -u option not working?

How can I use the 'ps' command to view current sessions but only for a given process/user, with the -u parm? In older versions of Unix, this used to work, but not in Sun Solaris. Thanks (4 Replies)
Discussion started by: ElCaito
4 Replies

2. Shell Programming and Scripting

-s option to find object exists not working.

is there a direct command to find whether directory is empty, -s option doesn't seem to work. Mark. (2 Replies)
Discussion started by: markjason
2 Replies

3. UNIX for Advanced & Expert Users

For ls command,-r option is not working on OSF1

There r 2 servers. Lets call them S1 and S2.. S1 is OSF1 and S2 is SunOS.. One directory of S2 is mounted on S1. say abc/xyz There is one application which continuously put xml files in that directory (on S2). If we give command “ls -lrt” on S2 it gives proper output.. (i.e. gives list... (1 Reply)
Discussion started by: asmita
1 Replies

4. UNIX for Dummies Questions & Answers

Solaris find without maxdepth

Hi, I am using Solaris 5.8 I searched online, the find command has an option called maxdepth which can be used to limit the number of directories find will look into. find . -maxdepth 2 -type f When I run the above command in solaris, I get an error find: bad option -maxdepth find:... (2 Replies)
Discussion started by: Leion
2 Replies

5. Shell Programming and Scripting

help with find command and prune option

Hi I have a directory say mydir and inside it there are many files and subdirectories and also a directory called lost+found owned by root user I want to print all files directories and subdirectorres from my directory using find command except lost+found If i do find . \( -name... (3 Replies)
Discussion started by: xiamin
3 Replies

6. HP-UX

who command option not working

Running HP 11.31 on a HP3600. But when I log in as a user the who command works but if I use an option like "who -m" I get nothing. Any thoughts on what is causing this problem. (11 Replies)
Discussion started by: KMRWHUNTER
11 Replies

7. Shell Programming and Scripting

daystart option not working in find command

Hi, I am trying to list all the files created / modified today in a directory. With reference to this thread, https://www.unix.com/shell-programming-scripting/20324-capture-all-today-files.html I have used the below command to list all the files modified today. find . -daystart -type f... (8 Replies)
Discussion started by: arunkumarmc
8 Replies

8. Shell Programming and Scripting

Please suggest me a better option than FIND command

Hi All, Could you please help me in searching files in a better way satisfying the below conditions I want to search files in a path whose access time is more than 5min and less than 60 min and whose Byte size is greater than zero For this, i am using the below command, but it is... (2 Replies)
Discussion started by: sparks
2 Replies

9. Shell Programming and Scripting

Maxdepth command not working in AIX.Need alternative solution for this command

Hi All, I am trying to select 30 days older files under current directory ,but not from subdirectory using below command. find <Dir> -type f -mtime + 30 This command selecting all the files from current directory and also from sub directory . I read some documention through internet ,... (1 Reply)
Discussion started by: kommineni
1 Replies

10. Shell Programming and Scripting

What is wrong with 'find . -maxdepth 1 -ctime -7 -type f'?

Have you tried running the command below? On the same RHEl 6.8 or 6.6. It will give you different output. find . -maxdepth 1 -ctime -7 -type f rpm -qa|grep find findutils-4.4.2-9.el6.x86_64 # cat /etc/redhat-release Red Hat Enterprise Linux Server release 6.8 (Santiago) # (6 Replies)
Discussion started by: invinzin21
6 Replies
vfind(1)							    ShapeTools								  vfind(1)

NAME
vfind - find attributed software objects (ASOs) SYNOPSIS
vfind [ options ] pathname-list expression DESCRIPTION
Vfind recursively descends the directory hierarchy for each pathname in the pathname-list seeking asos that match a boolean expression written in the primaries given below. In the description, the argument n is used as a decimal integer where +n means more than n, -n means less than n and n means exactly n. OPTIONS
-version print version information about the vfind program itself. No other action given will be performed. -?, -help print brief instructions about using vfind. -cache match a boolean expression also for aso residing in the derived object cache. -cut nesting depth causes vfind to descend the filesystem hierarchy down to nesting depth nesting depth. -force Vfind normally ignores saved asos iff a AtFS directory is a symbolic link. If the -force option is given vfind takes also symbolic AtFS directories into consideration. -hits causes vfind to return the number of expressions yielding true during evaluation. -xdev causes vfind not to traverse down into a file system different from the one on which current argument pathname resides. PRIMARIES
-atime n True if the aso has been accessed in n days. -ctime n True if status of the aso has been changed in n days. -mtime n True if the aso has been modified in n days. -stime n True if the aso has been saved in n days. -ltime n True if the aso has been locked in n days. -exec command True if the executed command returns a zero value as exit status. The end of the command must be punctated by an ecscaped semicolon. A command argument `{}' is replaced by the system name of the current aso. -exit n Terminates vfind and returns n as the exit status. -vl Always true; causes the current aso to be printed together with its associated statistics. This includes protection mode, AtFS ver- sion state, user, host, size in bytes, modification time respectively saving time. The format is identical to that of ``vl -l''. -name name True if the name argument matches the filename component of the current aso. Normal Shell argument syntax may be used if escaped. -perm onum True if the aso permission flags exactly match the octal numer onum. If onum is prefixed by a minus sign, more flag bits (017777) become significant and the flags are compared: (flags&onum)==onum. -print Always true; causes the relative path of the current aso to be printed. -prune Always true; has the side effect of pruning the tree, iff the current file is a directory. -SinceName name True if the current aso is older than the corresponding aso having the symbolic name name. -symbolic name True if the current aso has the symbolic name name. See vadm(1) or save(1) on how to attach a symbolic name to an aso. -state state True if the state of the current aso matches state state, where state is busy, save, proposed, published, accessed, or frozen. -type c True if the type of the current aso is c, where c is b, c, d, f, l, or s for block special file, character special file, directory, plain file, symbolic link, or socket. -uda uda True if the current aso has an user defined attribute matching uda uda, where uda is of the form name[=value]. -user user True if the current aso belongs to user user, where user is a login name optinally followed by a domainname (e.g. uli@cs.tu- berlin.de). -last True if the current aso is the last version of the development line. -first True if the current aso is the first version of the development line. -locked True if the current aso is locked. -locker user True if the current aso is locked by user user, where user is a login name optionally followed by a domainname. -eq vnum True if the version number of the current aso matches version number vnum, where vnum is generation.revision. -lt vnum True if the version number of the current aso is less than the version number vnum. -le vnum True if the version number of the current aso is less equal than the version number vnum. -gt vnum True if the version number of the current aso is greater than the version number vnum. -ge vnum True if the version number of the current aso is greater equal than the version number vnum. -newer file True if the current aso is more recently than the argument file which can be an aso (e.g. vfind.c[1.6]). -size n True if the file is n blocks long (512 bytes per block). The primaries may be combined using the operators (, ) for grouping, ! for negation, -a for concatenation (may be omitted) and -o for alternation of primaries. Parentheses and the exclamation mark are special to the Shell and must be escaped. vfind does not descent AtFS directories, so the AtFS archives are never selected. EXAMPLES
To find all asos whose state is busy and that have the symbolic name "foobar": vfind / -state busy -symbolic foobar -print To find the latest proposed version of foo.c in the current directory: vfind -prune 0 . -name foo.c -state proposed -last -print SEE ALSO
vl(1), find(1) INCOMPATIBILITIES
The following find(1) primaries are not recognized or implemented: -link, -nouser, -group, -nogroup, -inum, and -ok. AUTHOR
Uli.Pralle@cs.tu-berlin.de Steve Emerson (steve@unidata.ucar.edu) contributed the primary 'SinceName'. vfind-3.3 Tue Jun 29 16:31:49 1993 vfind(1)
All times are GMT -4. The time now is 04:04 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy