我正在尝试sh
使用 ffprobe 在 OSX 脚本中获取音频类型:ffprobe "$i" |& egrep -ci "vorbis|aac"
它适用于 cli intcsh
但不适用于脚本。|&
似乎在脚本内部不起作用。|&
重定向 ffprobe 的输出,否则 ffprobe 打印到 cli。任何帮助表示赞赏。
##mkv files
for i in "$input"*.mkv ; do
if [ -e "$i" ] ; then
##1st check type(vorbis|aac)
type=$(/usr/local/bin/ffprobe "$i" |& egrep -i "vorbis|aac")
echo "Test: $type"
##just get audio format
type=$(/usr/bin/perl -e '$_=@ARGV[0];if (/(aac|vorbis)/ig) {print $1;}' "$type")
echo "Type: $type"
exit
fi
done
我得到的错误是:
command substitution: line 46: syntax error near unexpected token `&'
command substitution: line 46: `/usr/local/bin/ffprobe "$i" |& egrep -i "vorbis|aac"'