我使用经过 (标准unix密码管理器),它停止搜索链接目录,例如:
> pass find test
Search Terms: test
├── mine -> /mnt/params/.password-store/mine [recursive, not followed]
(...)
> ls -l /home/kossak/.password-store/mine 10:44:32
lrwxrwxrwx 1 kossak kossak 32 2017-01-19 /home/kossak/.password-store/mine -> /mnt/params/.password-store/mine
> ls -ld /mnt/params/.password-store/mine
drwx------ 2 kossak kossak 4096 2021-05-06 /mnt/params/.password-store/mine文件夹mine不是递归的,它是指向不同文件夹的链接。它在一段时间前就起作用了,但现在它停止了。
有什么办法解决吗?
我在用:
发布于 2023-04-12 02:27:50
pass 显然使用tree用于pass find命令。
对于我来说,运行底层的tree命令给出了同样的问题:
$ tree -N -C -l --noreport -P '*test*' --prune --matchdirs --ignore-case /home/user/.password-store
/home/user/.password-store
└── symlink -> /path/to/another/dir [recursive, not followed]您还可以看到“递归,而不是遵循”错误在tree源代码。
关于这种行为的表现的回答tree说:“如果在散列表中找到符号链接指向的目录的inode号(填充了saveino和findino),它就会跳过它。”
我还没有找到解决方案,但我的猜测是,tree中保存和查找inode编号的代码发生了一些奇怪的事情。
和你一样,我也记得像这样的符号链接曾经在pass中工作过,我不记得它们什么时候停止工作。上一次对任何事物的有意义的改变tree-related inpass是在2014年,也许这是tree的倒退吧?
为了找到tree命令,我在password-store.sh中的链接tree -N -C行上添加了set -x
https://unix.stackexchange.com/questions/709942
复制相似问题