运行 find 命令时权限被拒绝

运行 find 命令时权限被拒绝

我正在运行这个命令:

cleber@ubuntux:~$ find . -name "*log*" -name "*2016*"
./log-2016-05-04.txt
./log-2016-05-03.txt
./log-2016-05-08.txt
./log-2016-05-02.txt
./log-2016-05-05.txt
find: ‘./.cache/dconf’: Permission denied
./log-2016-05-01.txt
./log-2016-05-06.txt
./log-2016-05-09.txt
./log-2016-05-07.txt
./log-2016-05-10.txt
find: ‘./.dbus’: Permission denied

为什么我会收到“权限被拒绝”错误?我的所有权限设置/home/cleber都正确。有人能帮助我吗?谢谢。

答案1

看起来您的主目录中有一些文件夹的所有者(或者可能是权限)不正确。

Permission denied警告意味着find无法在特定文件夹中进行搜索,因为它显然没有列出其内容的权限。

在您的主目录中,最可能的原因是您正在运行一些 GUI 应用程序,sudo这些应用程序的文件所有权混乱。要修复此问题并让您再次成为主目录中所有文件的所有者,请运行以下命令:

sudo chown -R $USER ~

否则,如果您确定所有权限和所有权都是正确的,并且您不想修改任何内容,您也可以通过在/dev/nullfind 命令中附加 STDERR 重定向来隐藏输出中的警告:

find . -name "*log*" -name "*2016*" 2> /dev/null

相关内容