首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >hp-ux find命令不处理文件列表。

hp-ux find命令不处理文件列表。
EN

Unix & Linux用户
提问于 2016-03-21 21:19:29
回答 2查看 3.7K关注 0票数 0

我们使用以下hp配置:

代码语言:javascript
复制
HP-UX dxp10hxw B.11.23 U 9000/800 1446354274 unlimited-user license

并尝试运行以下简单的find命令:

代码语言:javascript
复制
find . ! -type l -perm -0020 -exec ls -l {} \;

这应该生成当前目录中所有文件/文件夹的列表,这些文件/文件夹具有组可写权限。但是,它还列出了没有组可写权限的文件。

我们做了一些研究,并尝试了上述命令的变体,如:

代码语言:javascript
复制
find . ! -type l -perm -g+w -exec ls -l {} \;
find . ! -type l -perm -g=w -exec ls -l {} \;

但似乎什么都起不了作用。我们尝试过谷歌搜索,但对hp的谷歌搜索结果并不多。在hp论坛上,我们能找到的最接近的是:http://community.hpe.com/t5/System-Administration/commnd-to-find-All-world-writable-files-in-hpux-11-0-system/td-p/3260440,但是这里提到的建议也没有帮助。

我们试着一次找到一个文件。例如,如果有一个权限为711的文件,并且当我们运行上面的命令时,它会在结果中显示。然后修改命令,使其仅搜索该文件,而不是当前目录和下面命令中的所有文件。

代码语言:javascript
复制
find ./temp.txt ! -type l -perm -g+w -exec ls -l {} \; 

没有产生任何结果。然后,我们尝试在文件夹中提供一小部分文件,并且在输出时收到的文件列表是正确的,但是一旦文件夹中的文件数量增加,结果就会再次不正确。因此,至少我们意识到,对于一个大清单的文件(约600个文件)在一个单一的搜索,找到是打破了请帮助!

EN

回答 2

Unix & Linux用户

回答已采纳

发布于 2016-03-21 21:42:01

命令

代码语言:javascript
复制
find . ! -type l -perm -0020 -exec ls -l {} \;

已经很接近了。但是,如果将-d选项添加到ls命令中,它将工作,方法是不让它列出目录的内容。

给出的命令将在子目录中重新出现;这个问题只提到文件(和文件夹.)。你可能是说

代码语言:javascript
复制
find . -type f -perm -0020 -exec ls -l {} \;

完全忽略目录。给定的命令还将列出具有组可写权限的目录。

票数 2
EN

Unix & Linux用户

发布于 2016-03-21 21:46:16

代码语言:javascript
复制
find . ! -type l -perm -g=w -exec ls -lLd {} \;

在包含6000个文件的/tmp下,上面的命令在HP-UX11.11服务器上对我起作用。你的问题不是来自文件的数量。600个文件只是沧海一粟,除非你的物理内存量真的很低。

票数 2
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/271336

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档