String 带bash的浮点操作
如何在bash脚本中将字符串“620/100”转换为“6.2” 我的问题是关于图像处理的。EXIF数据以分数格式编码焦距,而我需要相应的十进制字符串String 带bash的浮点操作,string,bash,replace,exif,operation,String,Bash,Replace,Exif,Operation,如何在bash脚本中将字符串“620/100”转换为“6.2” 我的问题是关于图像处理的。EXIF数据以分数格式编码焦距,而我需要相应的十进制字符串 感谢您的帮助,Olivier不支持浮点 您可以使用bc: $ echo "50/10" | bc -l 5.00000000000000000000 $ echo "scale=1; 50/10" | bc -l 5.0 使用bc-l bc -l <<< "scale=2; 620/100" 6.20 谢谢你的回答。bc是我所
感谢您的帮助,Olivier不支持浮点 您可以使用
bc
:
$ echo "50/10" | bc -l
5.00000000000000000000
$ echo "scale=1; 50/10" | bc -l
5.0
使用bc-l
bc -l <<< "scale=2; 620/100"
6.20
谢谢你的回答。bc是我所需要的 我不知道公布结果是否有用。不管怎么说,这是最后一段代码,用于计算照片的焦距并以十进制格式打印。它应该适用于所有摄像机。在3个不同品牌的4个摄像头上测试
F="your_image.JPG"
EXIF=$(exiv2 -p v "$F")
FocalFractional=$( echo "$EXIF" | grep -E '[^ ]* *Photo *FocalLength '| grep -iohE "[^ ]* *$" )
Formula="scale=2; "$FocalFractional
FocalDecimal=$( bc -l <<< "$Formula" )
echo $ FocalDecimal
F=“your_image.JPG”
EXIF=$(exiv2-pv“$F”)
聚焦分数=$(回声“$EXIF”| grep-E'[^]**照片*聚焦长度“| grep-iohE”[^]**$”)
Formula=“scale=2;”“$FocalFractional
FocalDecimal=$(bc-l
F="your_image.JPG"
EXIF=$(exiv2 -p v "$F")
FocalFractional=$( echo "$EXIF" | grep -E '[^ ]* *Photo *FocalLength '| grep -iohE "[^ ]* *$" )
Formula="scale=2; "$FocalFractional
FocalDecimal=$( bc -l <<< "$Formula" )
echo $ FocalDecimal