排序数字文件在bash [英] Sort files numerically in bash

查看:119
本文介绍了排序数字文件在bash的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要数字排序。FLV文件,我能够用下面的命令来做到这一点:

  LS * \\ FLV |排序--version排序-f

但有很多文件(数百)这不是正确排序

  LS * \\ FLV |排序--version排序-f |尾-n 20
e680.flv
e681.flv
e682.flv
e683.flv
e684.flv
e685.flv
e686.flv
e687.flv
e688.flv
e689.flv
e690.flv
e691.flv
e692.flv
e693.flv
e694.flv
e695.flv
** ** e696.flv
s572.flv
s602.flv
s654.flv

但奇怪的是这样的,如果我搞坏了命令而不*。FLV它的工作。
我可以只使用LS但我的文件夹中的其他文件类型。

  LS |排序--version排序-f |尾-n 20
e680.flv
e681.flv
e682.flv
e683.flv
e684.flv
e685.flv
e686.flv
e687.flv
e688.flv
e689.flv
e690.flv
e691.flv
e692.flv
e693.flv
e694.flv
e695.flv
e696.flv

我试过到目前为止:

  LS |排序--version排序-f | grep的FLV
    LS *。FLV |排序--version排序-f
    。LS * \\ FLV |排序--version排序-f
    LS *。FLV |排序-f


解决方案

我会尝试以下code。作品在我的测试场景:

  LS -1 * \\ FLV。|排序-n -k1.2

LS 列出每行flv文件1,排序负责在每个第一个(也是唯一一个)字行第二个字符开始(数量开始)。排序数字

I need to sort .flv files numerically and i was able to do it with the following command:

ls *\.flv | sort --version-sort -f

but with many files(hundreds) it's not sorting correctly.

ls *\.flv | sort --version-sort -f | tail -n 20
e680.flv
e681.flv
e682.flv
e683.flv
e684.flv
e685.flv
e686.flv
e687.flv
e688.flv
e689.flv
e690.flv
e691.flv
e692.flv
e693.flv
e694.flv
e695.flv
**e696.flv**
s572.flv
s602.flv
s654.flv

but the strange this is, if i'm ruining the command without "*.flv" it's working. i could use just ls but i have other file types in the folder.

ls | sort --version-sort -f | tail -n 20
e680.flv
e681.flv
e682.flv
e683.flv
e684.flv
e685.flv
e686.flv
e687.flv
e688.flv
e689.flv
e690.flv
e691.flv
e692.flv
e693.flv
e694.flv
e695.flv
e696.flv

what i've tried so far:

    ls | sort --version-sort -f | grep "flv"
    ls *.flv | sort --version-sort -f
    ls *\.flv | sort --version-sort -f
    ls *.flv | sort -f

解决方案

I would try following code. Works on my testing scenario:

ls -1 *\.flv | sort -n -k1.2

The ls lists flv files 1 on each line, sort takes first (and only one) word on each line starting on second character (start of the number). Sorts numerically

这篇关于排序数字文件在bash的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆