递归排序文件列表(linux)

时间:2014-07-01 17:38:01

标签: linux file find

我想通过目录递归,包括子目录和子目录等等,只打印出文件名(没有目录)。我还希望将结果分别放在一个新行上并进行排序。

请注意,ls -LRls -xLR不起作用,因为ls会将结果格式化为某种表格。

大家,如果你可以编辑它,你有什么建议吗?

3 个答案:

答案 0 :(得分:2)

转到要搜索的目录,然后运行:

find . -type f -exec basename {} \; | sort

按名称排序,只是文件名(没有路径),只是文件(没有目录)。


详细说明:

    默认情况下,
  • find以递归方式工作。
  • -type f将仅打印文件,而不打印目录。
  • -exec basename在结果上运行basename(因此不会打印路径)。
  • sort会对结果进行排序(D'哦!)

答案 1 :(得分:0)

找到'怎么样?和'排序'事业吗?

find <dir> -type f |sort

答案 2 :(得分:0)

那应该有用。你错了吗?你有什么版本的linux?见下面的例子

testserver:~ # find /etc -type f | sort
/etc/.pwd.lock
/etc/DIR_COLORS
/etc/HOSTNAME
/etc/Muttrc 
....
....
/etc/zmd/zmd.conf
/etc/zshenv
/etc/zshrc
/etc/zypp/zypp.conf
testserver:~ #

(p.s。抱歉试图添加评论,但我的代表不是50,所以添加作为答案)