linux – 在bash中以数字方式对文件进行排序

linux – 在bash中以数字方式对文件进行排序,第1张

概述我需要以数字方式对.flv文件进行排序,我可以使用以下命令执行此 *** 作: ls *\.flv | sort --version-sort -f 但是有很多文件(数百个),它没有正确排序. ls *\.flv | sort --version-sort -f | tail -n 20e680.flve681.flve682.flve683.flve684.flve685.flve686. 我需要以数字方式对.flv文件进行排序,我可以使用以下命令执行此 *** 作:
ls *\.flv | sort --version-sort -f

但是有很多文件(数百个),它没有正确排序.

ls *\.flv | sort --version-sort -f | tail -n 20e680.flve681.flve682.flve683.flve684.flve685.flve686.flve687.flve688.flve689.flve690.flve691.flve692.flve693.flve694.flve695.flv**e696.flv**s572.flvs602.flvs654.flv

但奇怪的是,如果我在没有“* .flv”的情况下破坏了命令,它就会起作用.
我可以使用ls但我在文件夹中有其他文件类型.

ls | sort --version-sort -f | tail -n 20e680.flve681.flve682.flve683.flve684.flve685.flve686.flve687.flve688.flve689.flve690.flve691.flve692.flve693.flve694.flve695.flve696.flv

到目前为止我尝试过的:

ls | sort --version-sort -f | grep "flv"    ls *.flv | sort --version-sort -f    ls *\.flv | sort --version-sort -f    ls *.flv | sort -f
解决方法 我会尝试下面的代码.适用于我的测试场景:
ls -1 *\.flv | sort -n -k1.2

ls列出每行的flv文件1,sort从第二个字符(数字的开头)开始,在每一行上获取第一个(也是唯一一个)单词.按数字排序

总结

以上是内存溢出为你收集整理的linux – 在bash中以数字方式对文件进行排序全部内容,希望文章能够帮你解决linux – 在bash中以数字方式对文件进行排序所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/1039823.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-24
下一篇 2022-05-24

发表评论

登录后才能评论

评论列表(0条)

保存