1
sleepingdog OP |
2
sleepingdog OP |
3
NEO17 2023-10-17 20:34:00 +08:00
看着没错。Ubuntu 版本是? locate 版本? updatedb 试下
|
4
sleepingdog OP @NEO17 #3 忘了说了,
ubuntu 是 2204lts ,locate 版本是 奇怪我在树莓派上执行这个命令也没有出现内容。树莓派上也是有那个 /usr/bin/zip 的 两个 locate 都是那个 4.8.0 |
5
sleepingdog OP 直接用 locate bin/zip ,它是能出来的,所以应该是哪里出了问题
|
6
zhuisui 2023-10-17 21:14:54 +08:00
我原样复制你的,能找到。语法也没问题。
你确定你用的是你贴的命令,而不是 --regexp ?另外你用了 updatedb 更新过数据库? |
7
sleepingdog OP @zhuisui #6
然后也 sudo updatedb 过了。 这是虚拟机的 ubuntu 系统,zip 也都装了好几天了,应该不是这个问题。 关键我在树莓派上也是这个结果,真是蚌埠住了。树莓派是树莓派的 os ,发现没有 locate ,手动 apt 安装了 |
8
sleepingdog OP 手动输入也不行。试了 n 次
|
9
sleepingdog OP |
10
JinTianYi456 2023-10-17 23:12:35 +08:00
不明所以
> updatedb > locate --regex 'bin/(bz|gz|tar)' /bin/gzip /bin/tar /usr/bin/bzcat /usr/bin/bzip2 > locate bin/tar /bin/tar |
11
julyclyde 2023-10-18 13:10:27 +08:00
@sleepingdog 那你 strace locate 看看它到底都做了些啥?
|
12
sleepingdog OP @JinTianYi456 #10
update 是不是一般都要加 sudo ? 不过我即使加了,前面也弹出这个东西 我去到该位置,发现权限是这样。 但感觉这两个文件应该和上述的应该没有关系吧 回到问题,又试了下也还是这样。locate --regex '/bin/zip' ,倒是可以出来结果 |
13
sleepingdog OP @Livid 我 10 楼的最后一张图片包含了用户信息,能帮我删除该图片么
|
14
sleepingdog OP |
15
sleepingdog OP @julyclyde #11 因为没用过 strace ,不知 strace locate --regex '/bin/(bz|gz|zip)'这样对不对?
它显示的东西太多了只截取前部分和后部,中间基本都是 read(3,.....之类的内容 ~/workspaces/cat$ strace locate --regex '/bin/(bz|gz|zip)' execve("/usr/bin/locate", ["locate", "--regex", "/bin/(bz|gz|zip)"], 0x7ffd16805b50 /* 53 vars */) = 0 brk(NULL) = 0x5643604f8000 arch_prctl(0x3001 /* ARCH_??? */, 0x7ffe61c87470) = -1 EINVAL (无效的参数) mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fbfa3762000 access("/etc/ld.so.preload", R_OK) = -1 ENOENT (没有那个文件或目录) openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3 newfstatat(3, "", {st_mode=S_IFREG|0644, st_size=73967, ...}, AT_EMPTY_PATH) = 0 mmap(NULL, 73967, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7fbfa374f000 close(3) = 0 openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libc.so.6", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0P\237\2\0\0\0\0\0"..., 832) = 832 pread64(3, "\6\0\0\0\4\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0"..., 784, 64) = 784 pread64(3, "\4\0\0\0 \0\0\0\5\0\0\0GNU\0\2\0\0\300\4\0\0\0\3\0\0\0\0\0\0\0"..., 48, 848) = 48 pread64(3, "\4\0\0\0\24\0\0\0\3\0\0\0GNU\0\244;\374\204(\337f#\315I\214\234\f\256\271\32"..., 68, 896) = 68 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=2216304, ...}, AT_EMPTY_PATH) = 0 pread64(3, "\6\0\0\0\4\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0"..., 784, 64) = 784 mmap(NULL, 2260560, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fbfa3400000 ...... read(3, "0000cf67-0006076eea03b003.journa"..., 4096) = 4096 read(3, "e-le64.cache-7\0\0d677cdf-5295-4fc"..., 4096) = 4096 read(3, "le64.cache-7\0\377101a04ab-0cd4-493e"..., 4096) = 3493 read(3, "", 4096) = 0 close(3) = 0 close(1) = 0 close(2) = 0 exit_group(1) = ? +++ exited with 1 +++ |
16
sleepingdog OP |
17
julyclyde 2023-10-18 20:04:21 +08:00
@sleepingdog updatedb 必须用 root 身份运行,否则无权限看所有的文件,没权限写 locate.db
|
18
julyclyde 2023-10-18 20:05:00 +08:00
@sleepingdog strace 的输出很长的。慢慢读吧
|