排除solaris中的所有隐藏文件和目录

Unix新手可以使用你的帮助。

我正在使用Solaris 10,需要查找所有文件,不包括所有隐藏的文件和目录。 最终的目标是把它放在一个能够删除服务器上超过60天的文件的脚本中。

我试过了:

找 。 ! (-name'。*'-prune)

但它根本找不到任何文件。

任何build议表示赞赏。

我相信问题在于你排除了所有名为“。*”的内容,而你正在以“。”开始search。 (这与您的排除相匹配),所以你排除了一切。 另外,我相信你正在滥用-prune标志(这是一个动作,像-print ,所以作为否定expression的一部分不一定有用)。 尝试这个:

 find . \( -name '.*' \! -name '.' -prune \) -o -print 

这明确包括'。' 在search,然后排除其他匹配.* 。 如果你知道你的出发点不包含任何点文件,你可以简化一下:

 find * \( -name '.*' -prune \) -o -print 

这应该工作:

 find * | grep -v /\\. 

需要find除了所有隐藏(文件和目录)以外的所有文件。

找 。 -name'[^。] *'

排除所有(隐藏文件)和目录。

找 。 -type f -name'[^。] *'

最终的目标是把它放在一个能够删除服务器上超过60天的文件的脚本中

找 。 -name'[^。] *'-mtime +59 | xargs rm -f