我正在尝试使用mac来遍历目录中的所有视频,并将文件的详细信息(持续时间,大小和时间)添加到mysql数据库中。但由于某种原因,每次它都在mysql部分失败。
如果我采用脚本生成的mysql查询并在mysql db上运行它可以正常工作。任何人都可以提供帮助吗?
#!/bin/bash
OrDir="/Volumes/Misc/video"
find "$OrDir" -type f -exec /bin/bash -c \
'name=$(basename "$1")
name=${name%.*}
duration=$( ffprobe -v error -show_entries format=duration -of default=noprint_wrappers=1:nokey=1 -sexagesimal "$1")
hash=$( md5 "$1" | cut -f 4 -d " ")
size=$( stat -f%z "$1")
QUERY="UPDATE Video SET Duration=\"$duration\", Hash=\"$hash\", Bytes=$size WHERE Name=\"$name\" "
echo "$QUERY \n"
mysql --host=**.**.**.** --user=**** --password=****** **** << EOF
$QUERY;
EOF
' _ {} \;
*
省略了敏感数据并且是正确的(它们在另一个shell脚本中使用,使用相同的方法在同一台服务器上正常运行)
这只是一个较大的脚本的一部分,一旦这种方法正常工作,它将被合并