Find 如何找到所用符合要求文件,并按照标号排序

#linux
文件夹包含如下文件:
![[Pasted image 20230530202254.png]]
刚开始使用:

1
echo $(find ./ -name "proces*.mp4")|sort

![[Pasted image 20230530202238.png]]
此时可以看到标号还是非常的乱
方法使用 sort -V

-V(或 --version-sort)选项告诉sort命令按照人类可读的版本号进行排序,而不是按照默认的字母顺序。它可以确保按照编号顺序对文件名进行正确的排序,例如 file1.mp4file2.mp4file3.mp4 等。
这对于按照文件名编号顺序进行视频合并是非常有用的,因为默认的字母排序可能会将 file10.mp4 排在 file1.mp4 之前。
所以,sort -V 选项确保在排序文件名时按照版本号的顺序进行,以便正确地按照编号顺序对视频进行合并。

1
echo $(find ./ -name "proces*.mp4")|sort -V

只在该文件夹寻找的话

1
echo $(find ./ -maxdepth 1 -type f -name "process*.mp4" | sort -V)

![[Pasted image 20230530202906.png]]

使用ffmpeg处理:

1
ffmpeg -f concat -safe 0 -i <(for f in $(find ./ -maxdepth 1 -type f -name "process*.mp4" | sort -V);do echo "file '$PWD/$f'" ;done) -c copy output.mp4

快速合成一个视频,还录了一个视频