已经知道有如下文件:
/home/pt/videos/pama2/1.flv.mpg
/home/pt/videos/pama2/2.flv.mpg
/home/pt/videos/pama2/3.flv.mpg
/home/pt/videos/pama2/4.flv.mpg
/home/pt/videos/pama2/5.flv.mpg
/home/pt/videos/pama2/6.flv.mpg
/home/pt/videos/pama2/7.flv.mpg
/home/pt/videos/pama2/8.flv.mpg
/home/pt/videos/pama2/9.flv.mpg
/home/pt/videos/pama2/10.flv.mpg
我需要按照从1到10的顺序拼接,使用下面的程序
for filename in /home/pt/videos/pama2/*mpg;
do cat $filename >> /home/pt/videos/pama2/result.mpg;
echo $filename;
done;
注意echo $filename; 是用来看文件拼接顺序的
结果,拼接成了一个大文件,但是没有按照我期望的顺序,
屏幕输出
/home/pt/videos/pama2/10.flv.mpg
/home/pt/videos/pama2/1.flv.mpg
/home/pt/videos/pama2/2.flv.mpg
/home/pt/videos/pama2/3.flv.mpg
/home/pt/videos/pama2/4.flv.mpg
/home/pt/videos/pama2/5.flv.mpg
/home/pt/videos/pama2/6.flv.mpg
/home/pt/videos/pama2/7.flv.mpg
/home/pt/videos/pama2/8.flv.mpg
/home/pt/videos/pama2/9.flv.mpg
有一个文件本应当放在最后的,结果拼接在了最前面,
/home/pt/videos/pama2/10.flv.mpg
请问,我的shell程序如何修改?为何会出现这种结果?
如何按照顺序拼接文件
-
- 帖子: 980
- 注册时间: 2008-04-12 12:44
- eexpress
- 帖子: 58428
- 注册时间: 2005-08-14 21:55
- 来自: 长沙
Re: 如何按照顺序拼接文件
mencoder
all "copy", but better use mpeg4.
● cat .mplayer/mencoder.conf
[mpeg4]
profile-desc="MPEG4 编码"
oac=mp3lame=yes
ovc=lavc=yes
lavcopts=vcodec=mpeg4:vbitrate=1200
[mpeg4-hq]
profile-desc="高质量 MPEG4 编码"
profile=mpeg4
lavcopts=mbd=2:trell=yes:v4mv=yes
● /usr/bin/mencoder -profile mpeg4 `ls *.flv` -o profile-mpeg4.mpeg4
all "copy", but better use mpeg4.
● cat .mplayer/mencoder.conf
[mpeg4]
profile-desc="MPEG4 编码"
oac=mp3lame=yes
ovc=lavc=yes
lavcopts=vcodec=mpeg4:vbitrate=1200
[mpeg4-hq]
profile-desc="高质量 MPEG4 编码"
profile=mpeg4
lavcopts=mbd=2:trell=yes:v4mv=yes
● /usr/bin/mencoder -profile mpeg4 `ls *.flv` -o profile-mpeg4.mpeg4
● 鸣学
-
- 帖子: 100
- 注册时间: 2008-09-25 16:06
Re: 如何按照顺序拼接文件
代码: 全选
#!/bin/bash
for i in $(seq 10)
do
cat /home/pt/videos/pama2/${i}.flv.mpg >> /home/pt/videos/pama2/result.mpg
echo /home/pt/videos/pama2/${i}.flv.mpg
done
Power cloaked in simplicity !
- eexpress
- 帖子: 58428
- 注册时间: 2005-08-14 21:55
- 来自: 长沙