find命令中关于-prune命令的一些疑问

sh/bash/dash/ksh/zsh等Shell脚本
回复
笨笨鸟
帖子: 8
注册时间: 2009-02-18 16:56
联系:

find命令中关于-prune命令的一些疑问

#1

帖子 笨笨鸟 » 2009-06-26 12:17

1、#find -path "./tmp" -prune -o -name "file2*" -print
2、#find -name "file2*" -a -print -o -path "./tmp" -prune
3、#find -name "file2*" -a \( -path "./tmp" -prune -o -print \)
4、#find -name "file2*" -o \( -path "./tmp" -prune -o -print \)

对于-prune这个选项很是迷惑,请问大家,上面的三条语句中,除了第一条肯定正确外,第二、三、四条是否正确?

1、执行过程如下:
if( -path "./tmp" -prune == true )
{
无操作
}
else
{
-name "file2*" -print
}

2、执行过程如下:
if( -name "file2*" == true )
{
-print;
}
else
{
-path "./tmp" -prune
}
2的测试的结果中,这个也是正确的,很迷惑
回复