在Linux CLI中使用相对于当前目录的路径递归列出文件

这与这个问题很相似,但我想在unix中包含相对于当前目录的路径。 如果我执行以下操作:

ls -LR | grep .txt

它不包括完整路径。 例如,我有以下目录结构:

test1/file.txt
test2/file1.txt
test2/file2.txt

上面的代码将返回:

file.txt
file1.txt
file2.txt

我怎样才能使用标准的Unix命令来包含相对于当前目录的路径?


使用find:

find . -name *.txt -print

在使用GNU find的系统上,像大多数GNU / Linux发行版一样,您可以省略-print。


使用tree ,使用-f (完整路径)和-i (无缩进线):

tree -if --noreport .
tree -if --noreport directory/

然后你可以使用grep来过滤掉你想要的。


如果找不到该命令,则可以安装它:

键入以下命令在RHEL / CentOS和Fedora linux上安装树命令:

# yum install tree -y

如果您使用的是Debian / Ubuntu,请在您的终端中输入Mint Linux的以下命令:

$ sudo apt-get install tree -y

试试find 。 你可以在手册页中查看它,但它是这样的:

find [start directory] -name [what to find]

所以为你的例子

find . -name "*.txt"

应该给你你想要的。

链接地址: http://www.djcxy.com/p/78333.html

上一篇: List files recursively in Linux CLI with path relative to the current directory

下一篇: find: missing argument to