接下来就是从 videoinfo 文件的 json 字符串中把我们要的宽高以及时长提取出来
# 这一段执行之后,videowidth 的值就是视频的宽
while read line
do
#statements
if [[ $line =~ 'width' ]]; then
#statements
# 这里用了 awk 的方法提取字符串的一部分
videowidth=`echo $line | awk -F: '{print $2}' | awk -F, '{print $1}'`
echo $line
echo 'width' + $videowidth
break
fi
done < videoinfo
用下面的这种循环方法也可以得到视频的宽,但是这样的话,videowidth 的值只能在这个循环里有用,在循环外面这个值是获取不到的,而上面的那种写法叫重定向,就可以解决这个问题。
cat videoinfo | while read line
do
#statements
if [[ $line =~ 'width' ]]; then
#statements
videowidth=`echo $line | awk -F: '{print $2}' | awk -F, '{print $1}'`
echo $line
echo 'width' + $videowidth
# echo "$videowidth"
break
fi
done
类似的视频的高和时长也是用同样的方法可以获取到。就不贴详细代码了。