分页: 1 / 1
find 以结尾的文件
发表于 : 2012-10-05 14:32
由 罗非鱼
find /home/tiger -regex '.+save$'
可以找出/home/tiger下面以save结尾的文件,有两个问题
1.将.home/tiger的子目录中的,满足要求的文件名也找出来了,我只要/home/tiger目录下面,不要子目录中的,如何做?
2.为何find /home/tiger -regex 'save$'
不起作用?
Re: find 以结尾的文件
发表于 : 2012-10-05 14:36
由 枫叶饭团
1.-maxdepth 1 可以指定深度
2.你这个正则只匹配的只是save
Re: find 以结尾的文件
发表于 : 2012-10-05 14:41
由 罗非鱼
root@debian:/home/tiger# ls /home/test
save
root@debian:/home/tiger# find /home/test -regex 'save$'
root@debian:/home/tiger# find /home/test -regex '.*save$'
/home/test/save
root@debian:/home/tiger#
Re: find 以结尾的文件
发表于 : 2012-10-05 14:45
由 枫叶饭团
我的理解是,-regex匹配的好像是完整文件名,带上路径的。所以。。。前面的/home/test/文件名的一部分
如果你用-name就不会出现这种情况了
Re: find 以结尾的文件
发表于 : 2012-10-05 14:54
由 罗非鱼
root@debian:/home/tiger# find /home/test -name 'save$'
root@debian:/home/tiger# find /home/test -name -regex 'save$'
find: paths must precede expression: save$
Usage: find [-H] [-L] [-P] [-Olevel] [-D help|tree|search|stat|rates|opt|exec] [path...] [expression]
root@debian:/home/tiger#
不行!
Re: find 以结尾的文件
发表于 : 2012-10-05 15:04
由 lilydjwg
罗非鱼 写了:root@debian:/home/tiger# find /home/test -name 'save$'
root@debian:/home/tiger# find /home/test -name -regex 'save$'
find: paths must precede expression: save$
Usage: find [-H] [-L] [-P] [-Olevel] [-D help|tree|search|stat|rates|opt|exec] [path...] [expression]
root@debian:/home/tiger#
不行!
晕……看文档啊大哥——
Re: find 以结尾的文件
发表于 : 2012-10-05 15:05
由 枫叶饭团
代码: 全选
ef>find . -regex '\./test'
./test
ef>find . -name 'test'
./test
Re: find 以结尾的文件
发表于 : 2012-10-05 16:07
由 b33e
是啊,一个 * 就可以了