一尘不染

如何在Linux中生成带有绝对路径的文件列表?

linux

我正在编写一个将文件路径作为输入的Shell脚本。

因此,我需要生成具有完整路径的递归文件列表。例如,文件bar具有以下路径:

/home/ken/foo/bar

但是,据我所看到的,ls并且find只给出相对路径列表:

./foo/bar   (from the folder ken)

这似乎是一个显而易见的要求,但在findls手册页中看不到任何内容。

如何在Shell中生成文件列表及其绝对路径?


阅读 544

收藏
2020-06-02

共1个答案

一尘不染

如果给出find绝对路径作为开始,它将打印绝对路径。例如,要查找当前目录中的所有.htaccess文件,请执行以下操作:

find "$(pwd)" -name .htaccess

或如果您的Shell扩展$PWD到当前目录:

find "$PWD" -name .htaccess

find 只需将给定的路径添加到该路径中文件的相对路径。

pwd-P如果您想解析当前目录中的符号链接,Greg Hewgill也建议使用。

2020-06-02