我正在编写一个以文件路径为输入的shell脚本.

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

/home/ken/foo/bar

但是,据我所知,lsfind只给出了相对路径列表:

./foo/bar   (from the folder ken)

这似乎是一个明显的要求,但我在findls手册页中看不到任何内容.

如何在shell中生成文件列表,包括它们的绝对路径?

推荐答案

如果你给find一个绝对路径开始,它会打印绝对路径.例如,找到所有.htaccess当前目录中的文件:

find "$(pwd)" -name .htaccess

或者,如果您的shell将$PWD扩展到当前目录:

find "$PWD" -name .htaccess

find只是将给定的路径前置到该路径中文件的相对路径.

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

Linux相关问答推荐

获取Perl文件::Tail开始在最后流传输文件

删除第二列中数字为零的行

在树莓派内核中找不到arch/arm/kernel/calls.S

Linux 中大型 TSV 的条件编辑

无法在嵌入式 Linux 中使用 libjpeg 以 RGB888 在 LCD(黑色)上显示 JPEG

在 Rust 中重命名主线程

删除 csv 列中的不匹配值

如何为命令的所有选项启用无密码 sudo?

在不调试的情况下查找哪个汇编指令导致了非法指令错误

argv的编码是什么?

在 Python 上模拟鼠标点击

Linux 上的 C++ 开发 - 我从哪里开始?

将 AWK 结果分配给变量

./studio.sh 之后的 Android Studio 错误

Vim 增量搜索

conda 命令会提示错误:Bad Interpreter: No such file or directory

使用 SED 将单词的首字母大写

ImportError:在 ubuntu 14.04 中没有名为 _io 的模块

如何安排 tcpdump 在特定时间段内运行?

在我的 index.php 中加载 CSS 和 JS 等资源时出现错误 403