如何定位路径?

如何定位路径?

locate文件系统中的路径是否可以像文件名一样?例如,我想查找系统中包含“foo/bar”的所有路径,这可能会产生以下结果:

/home/我的名字/测试/富/酒吧/你好
/var/www/site/富/酒吧

答案1

如果您无法使用以下命令找到该文件,请尝试updatedb更新locate命令使用的数据库。

locate -r foot/bar/

或者

# locate  "/*/bar/avi"
/foot/bar/avi

find 命令也可以做到这一点

find / -path */foot/bar*

find / 将从以下位置开始搜索整个系统/

答案2

使用find命令,

find . -ipath "*foo/bar*"

或者如果您更喜欢正则表达式语法,那么您可以使用,

find . -iregex ".*foo/bar.*"

答案3

尝试 :

ls -lR | sed -n 's/foo\/bar/p' 

可能输出很长,id直接把它扔到文件中

ls -lR | sed -n 's/foo\/bar/p' >> outfile

答案4

这应该做你想要的:

user@machine% find / -print0 | grep -FzZ 'foo/bar'

除非您以 root 身份运行或在您自己的主目录上运行它,否则您将收到大量“权限被拒绝”的消息。

相关内容