我正在尝试查找我可以编辑的文件,我尝试了以下命令,但仍然得到“权限被拒绝”的结果。
find -name "*.config" | grep -v "Permission denied"
find -name "*.config" -perm /u+rw
我仍然可以看到如下结果:
find: `./proc/32609/task/32616/ns': Permission denied
答案1
当然可以通过重定向过滤掉权限被拒绝的错误2> /dev/null
,因为它是错误流的输出。
find -name "*.config" -perm /u+rw 2> /dev/null
但也有一个好主意是排除那些给您带来问题的目录-path /some/dir/*pattern -prune -o -print
。
find / -path "./proc*" -prune -o -name "*.config" -print 2> /dev/null
还应该能够使用逻辑或运算符排除多个目录-o
并分组到\( ... \)
括号中
find / -maxdepth 1 \( -not -path /etc* \) -o \( -not -path /var* \) -o \( -not -path /proc* \) -o \( -perm /u+rw -name "*.config" \)