ubuntu 上的查找命令出现奇怪问题

Strange problem with find command on ubuntu

我使用'find'命令查找文件,遇到一个奇怪的问题: 文件存在,但'find'找不到

我在 /运行 中找到了两个 .sock,其中 'sudo find /run -name docker.sock'

$sudo find /run -name docker.sock
/run/march/docker.sock
/run/docker.sock

当 运行 'sudo find /var -name docker.sock''sudo find /var/run -name docker.sock'

时我什么也没得到
$sudo find /var -name docker.sock
$sudo find /var/run -name docker.sock
$

但实际上/var/run/中有两个.sock,有意见吗?

$ls -al /var/run/docker.sock
srwxrwxrwx+ 1 root docker 0 Oct 18 20:45 /var/run/docker.sock
$ls -al /var/run/march/docker.sock/
total 0
drwxr-xr-x 2 root root  40 Oct 31 20:35 .
drwxr-xr-x 5 root root 100 Oct 31 20:35 ..
$ls -al /var/run/march/
total 0
drwxr-xr-x  5 root root  100 Oct 31 20:35 .
drwxr-xr-x 34 root root 1120 Oct 31 23:45 ..
drwxr-xr-x  2 root root   40 Oct 31 20:35 docker
drwxr-xr-x  2 root root   40 Oct 31 20:35 docker.pid
drwxr-xr-x  2 root root   40 Oct 31 20:35 docker.sock
$
$

顺便说一句,它在 Ubuntu 20.04.2 LTS

提前致谢

因为 /var/run 是一个符号 link 到 /运行,你必须告诉 find 跟随 links :

sudo find -L /var/run -name docker.sock