Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 如何列出目录和子目录中的文件?_Linux_Bash_Shell - Fatal编程技术网

Linux 如何列出目录和子目录中的文件?

Linux 如何列出目录和子目录中的文件?,linux,bash,shell,Linux,Bash,Shell,我有一个目录,其中有一些子目录有文本文件,现在我想用path列出子目录中的所有.txt文件。如何做到这一点?有几种方法: echo directory_name/*/*.txt 可能是最有效的:echo是一个内置的shell,*扩展由bash完成。如果需要更大功率,请使用ls而不是echo以下几种方法: echo directory_name/*/*.txt 可能是最有效的:echo是一个内置的shell,*扩展由bash完成。如果您需要更多电源,请使用ls而不是echo试试这个:tree-

我有一个目录,其中有一些子目录有文本文件,现在我想用path列出子目录中的所有.txt文件。如何做到这一点?

有几种方法:

echo directory_name/*/*.txt
可能是最有效的:echo是一个内置的shell,*扩展由bash完成。如果需要更大功率,请使用ls而不是echo

以下几种方法:

echo directory_name/*/*.txt
可能是最有效的:echo是一个内置的shell,*扩展由bash完成。如果您需要更多电源,请使用ls而不是echo

试试这个:tree-R | grep.txt

试试这个:tree-R | grep.txt

使用find命令

find /where/to/search -name "*.txt" -type f
这将只列出以.txt结尾的文件。使用-type f,即使其名称恰好以.txt结尾,也不会列出目录。

使用find命令

find /where/to/search -name "*.txt" -type f
这将只列出以.txt结尾的文件。使用-type f,即使其名称恰好以.txt结尾,也不会列出目录。

尝试以下操作:

find / -type f -name \*.txt
它将为您提供“/”目录中的所有.txt文件。

请尝试以下操作:

find / -type f -name \*.txt
ls -R path_of_your_directory | grep "\.txt$"
它将为您提供“/”目录中的所有.txt文件

ls -R path_of_your_directory | grep "\.txt$"
例如:

ls -R /tmp | grep "\.txt$"
例如:

ls -R /tmp | grep "\.txt$"

ls-l yourdir/*.txt用于example@fedorqui:这不会在子目录中列出*.txt文件。您是对的@cdarke,我错过了子目录步骤.ls-l yourdir/*.txtexample@fedorqui:这不会在子目录中列出*.txt文件。你说得对@cdarke,我错过了子目录步骤。他可能也想循环查看这些文件。。。对于f in/etc/*;不要重复$f;doneHe他可能也想在他们之间循环。。。对于f in/etc/*;不要重复$f;donetree将以树状格式列出,默认情况下未安装。tree将以树状格式列出,默认情况下未安装。有关更多参考,请阅读关于查找命令:有关更多参考,请阅读关于查找命令: