我需要隐藏所有被拒绝的消息:
find . > files_and_folders
当这样的信息出现时,我正在做实验。我需要收集所有的文件夹和文件,它没有出现。
是否可以将权限级别直接指向files_and_folders文件?
如何同时隐藏错误?
我需要隐藏所有被拒绝的消息:
find . > files_and_folders
当这样的信息出现时,我正在做实验。我需要收集所有的文件夹和文件,它没有出现。
是否可以将权限级别直接指向files_and_folders文件?
如何同时隐藏错误?
当前回答
重定向标准错误。例如,如果你在unix机器上使用bash,你可以像这样将标准错误重定向到/dev/null:
find . 2>/dev/null >files_and_folders
其他回答
您还可以使用-perm和-prune谓词来避免下降到不可读的目录(参见如何从查找程序中删除“拒绝权限”打印输出语句?- Unix和Linux Stack Exchange):
find . -type d ! -perm -g+r,u+r,o+r -prune -o -print > files_and_folders
use
sudo find / -name file.txt
这很愚蠢(因为你提升了搜索),也不安全,但写起来要短得多。
如果您正在使用CSH或TCSH,这里有一个解决方案:
( find . > files_and_folders ) >& /dev/null
如果你想输出到终端:
( find . > /dev/tty ) >& /dev/null
然而,正如“CSH -whynot”常见问题所描述的那样,您不应该使用CSH。
通过使用2>/dev/null管道stderr到/dev/null
找到。- name”……2 > / dev / null
虽然上述方法不能解决Mac OS X的情况,因为Mac OS X不支持可读开关,这是如何避免在输出中出现“权限拒绝”错误的。这可能会帮助到某些人。
查找/ -type f -name "your_pattern" 2>/dev/null。
例如,如果您使用find命令来查找目录中某些模式的文件的大小,2>/dev/null仍然可以工作,如下所示。
找到。-type f -name "your_pattern" -exec du -ch {} + 2>/dev/null | grep total$。
这将返回给定模式的文件的总大小。注意find命令末尾的2>/dev/null。