Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.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
Bash one liner用于按比特率对音乐库进行排序_Bash_Sorting_Mp3_Bitrate - Fatal编程技术网

Bash one liner用于按比特率对音乐库进行排序

Bash one liner用于按比特率对音乐库进行排序,bash,sorting,mp3,bitrate,Bash,Sorting,Mp3,Bitrate,我正试图编写一个bash命令来显示按比特率排序的音乐库。该命令必须是递归的,因为我有像这样组织的文件:music/artist/album/song.mp3 这将显示所有具有比特率信息但不进行排序的MP3: find-键入f-名称'*.mp3'-exec文件{}\ 如果在file命令的输出中使用逗号作为分隔符,则比特率介于第五个和第六个逗号之间,因此我尝试对命令进行如下排序: find-键入f-名称'*.mp3'-exec文件{}\|排序-n-t,+5-6 但它不起作用。小费 编辑: 该find

我正试图编写一个bash命令来显示按比特率排序的音乐库。该命令必须是递归的,因为我有像这样组织的文件:music/artist/album/song.mp3

这将显示所有具有比特率信息但不进行排序的MP3:

find-键入f-名称'*.mp3'-exec文件{}\

如果在file命令的输出中使用逗号作为分隔符,则比特率介于第五个和第六个逗号之间,因此我尝试对命令进行如下排序:

find-键入f-名称'*.mp3'-exec文件{}\|排序-n-t,+5-6

但它不起作用。小费

编辑:

该find命令的输出类似于:

./Stemage/Metroid Metal(原件)/supermetroid_brinstar.mp3:ID3版本2.3.0的音频文件,包含:MPEG ADT,第三层,v1,192 kbps,44.1 kHz,JntStereo

./Stemage/Metroid Metal(原件)/Metroid_kraid.mp3:ID3版本2.3.0的音频文件,包含:MPEG ADT,第三层,v1,192 kbps,44.1 kHz,JntStereo

./Stemage/Metroid Metal(原件)/Metroid_itemcollect.mp3:ID3版本2.3.0的音频文件,包含:MPEG ADT,第三层,v1,192 kbps,44.1 kHz,JntStereo

./Stemage/Metroid Metal(原件)/Metroid_tourianbrain.mp3:ID3版本2.3.0的音频文件,包含:MPEG ADT,第三层,v1,192 kbps,44.1 kHz,JntStereo

./Stemage/Metroid Metal(原件)/Metroid_ending.mp3:ID3版本2.3.0的音频文件,包含:MPEG ADT,第三层,v1,192 kbps,44.1 kHz,JntStereo

./Stemage/Metroid Metal(原件)/Metroid_metaltheme.mp3:ID3版本2.3.0的音频文件,包含:MPEG ADT,第三层,v1,192 kbps,44.1 kHz,JntStereo

试试这个:


find-键入f-名称'*.mp3'-exec文件{}\|排序-t,-nk6

不查找-键入f-名称'*.mp3'-exec文件{}\|sort-n-t,-k6,6
work?它生成了一个文件列表,但似乎没有按比特率排序。除非您共享由
find生成的几行输出-键入f-名称'*.mp3'-exec文件{}\很难帮助。哦,对不起。该find命令的输出类似于:
/Bolt-Thrower/1988-在战斗中没有法律/01-在战斗中没有法律。mp3:ID3版本2.3.0的音频文件,包含:MPEG ADT,第三层,v1,320 kbps,44.1 kHz,立体声
它确实输出了一个文件列表,但是它们不是按比特率排序的。@Goodhank发布了一些来自
find
命令的示例输出,以便我们进行调试。我的find命令的输出:
/Bolt-Thrower/1988-在战斗中没有法律/01-在战斗中没有法律。mp3:ID3版本2.3.0的音频文件,包含:MPEG ADT,第三层,v1,320 kbps,44.1 kHz,立体声
@Goodhank所以你想在
kbps
部分或
kHz
部分进行排序?@Goodhank将命令更改为
sort-t,-nk5
an,你应该都设置好了。